/sbin/init: нет такого файла или каталога | Не удается загрузить рабочий стол Ubuntu
Я уже давно пользуюсь Ubuntu Desktop, но сегодня почему-то не могу его запустить. Вот что я вижу.
Вот что я уже пробовал:
- Пробовал загружаться в режиме восстановления
- Выполнен fsck с загрузочного USB.
Вот что я сделал после загрузки с USB:
- Создан загрузочный USB
- Увидел 4 варианта:
- Попробуйте Ubuntu без установки
- Установить Ubuntu
- OEM Установить
- Проверьте диск на наличие дефектов
Я пошел к первому варианту. Открытый терминал -> sudo fdisk -l
Это дало мне мое настоящее имя устройства -> /dev/sda1
Затем я выполнил -> sudo fsck /dev/sda1 как упомянуто здесь - целевая файловая система не запросила /sbin/init
Вот вывод:
$ sudo fsck /dev/sda1
fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/sda1: clean, 682451/29483008 files, 26039796/117925888 blocks
Попытка перезагрузки и загрузки с жесткого диска, но та же проблема
- Загрузился снова с USB и выбрал попробовать Ubuntu без установки. Выполнено -
sudo fsck -f /dev/sda1
Вот как выглядит вывод - https://pastebin.com/Yi4PqRU4
Также попробовал вариант 4 check disk defects, Результат был No defects found
Помогите?
1 ответ
Возможно, что initrd поврежден или отсутствует. В этом случае он не сможет найти процесс init, который нужен и используется initrd. Выполните следующие шаги, чтобы восстановить initrd:
- Загрузитесь с носителя (USB/DVD) и запустите сеанс терминала от имени пользователя root. ("Режим спасения")
- Смонтируйте диск с корневой файловой системой в /mnt
mount /path/to/disk /mnt
- Монтируйте и привязывайте виртуальные файловые системы к вашему диску
mount --rbind /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
- chroot в ваш диск
chroot /mnt
- Смонтировать все остальное, если есть
mount -a
- перейти в каталог загрузки
cd /boot
- восстановить initrd
В RedHat это так же просто, как запустить эту команду:
mkinitrd
В Ubuntu похоже, что они используют другой инструмент. Во-первых, вам нужно увидеть, какую версию ядра вы используете:
# ls /lib/modules/
3.11.0-12-generic
Затем используйте версию, которую он дает, чтобы запустить необходимую команду:
# update-initramfs -c -k 3.11.0-12-generic
update-initramfs: Generating /boot/initrd.img-3.11.0-12-generic
После этого вы можете exit chroot и попробуйте загрузиться нормально снова, чтобы увидеть, если проблема решена.
