Поиск по сайту:

Ubuntu/Mint/Kali загружается с приглашением Initramfs в BusyBox


В этой статье мы покажем, как решить проблемы, возникающие, когда компьютер под управлением Linux Ubuntu/Mint/Kali не загружается или переходит в окно busybox во время выполнения initramfs. инициализация. Пользователь может получить доступ и использовать только командную строку initramfs.

Initramfs - это исходная файловая система на основе tmpfs в оперативной памяти, которая не использует отдельное блочное устройство. Как и initrd, он содержит инструменты и сценарии для монтирования файловых систем перед вызовом init, расположенных в корневой файловой системе.

Восстановление сломанного суперблока Ext4 в Linux

Если Ubuntu аварийно завершает работу в busybox во время инициализации initramfs, возможно, на диске поврежден суперблок.

В Linux хранятся все копии суперблоков. Чтобы восстановить систему в случае возникновения этой проблемы, вам необходимо загрузиться с аварийного образа/диска/Live CD и запустить командную строку терминала. После загрузки введите в терминале следующую команду:

# sudo fdisk -l|grep Linux|grep -Ev 'swap'

Команда возвращает информацию о вашем томе:

/dev/vda2 4096 83884031 83879936 40G Linux filesystem

Запомните имя тома и укажите его в следующей команде:

# sudo dumpe2fs /dev/vda2 | grep superblock

Команда покажет список резервных суперблоков:

Для замены поврежденного мы будем использовать второй резервный суперблок (можно использовать любой суперблок, кроме Primary). Проверьте диск с помощью резервного суперблока:

# sudo fsck -b 98304 /dev/vda2 -y

Если вы получите этот вывод:

fsck from util-linux 2.31.1
e2fsck 1.44.1 (24-Mar-2018)
/dev/vda2 is mounted.
e2fsck: Cannot continue, aborting

Размонтируйте том:

# umount /dev/vda2

После успешной замены суперблока вы получите такое сообщение:

fsck from util-linux 2.31.1
e2fsck 1.44.1 (24-Mar-2018)
/dev/vda2 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong for group #231 (32254, counted=32253).
Fix? yes
Free blocks count wrong for group #352 (32254, counted=32248).
Fix? yes
Free blocks count wrong for group #358 (32254, counted=27774).
Fix? yes
..........
/dev/vda2: ***** FILE SYSTEM WAS MODIFIED *****
/dev/vda2: 85986/905464576 files (0.2% non-contiguous), 3904682/905464576 blocks

Затем отключите загрузочный носитель и перезагрузите компьютер. Все должно работать правильно.

Ошибка загрузки Fsck: неожиданное несоответствие

Второй вариант проблемы initramfs (BusyBox) включает в себя следующее сообщение в окне терминала:

/dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY
The root filesystem on /dev/sda1 requires a manual fsck.

Если вы его не видите, попробуйте войти

(initramfs) exit

в окне терминала. Ошибка может появиться после того, как вы это сделаете…

В сообщении будет указан том, для которого требуется выполнить ручную проверку диска. Запустите следующую команду в командной строке initramfs:

# fsck /dev/sda1 -y

После завершения проверки диска перезагрузите компьютер и убедитесь, что Linux загружается правильно.

Тревога! /dev/volume не существует

Проблема с Фстабом

При загрузке хоста Linux вы можете увидеть следующую ошибку:

ALERT! /dev/sda1 does not exist. Dropping to a shell.

Возможно, вы только что установили Linux или на вашем хосте возникли проблемы с fstab. Чаще всего проблема возникает при установке системы с USB диска. Система может показать ошибку любого объема. Как и в первом случае, нам предстоит загрузиться со спасательного/загрузочного носителя Linux и выполнить некоторые действия. Проверьте UUID диска с помощью этой команды:

# sudo blkid

Система вернет что-то вроде этого:

/dev/sda2: UUID="36cce3d5-cbdb-46f4-adbf-3f9aaa01d729" TYPE="ext4" PARTUUID="fea4dab1-4e12-4327-85c6-76ade18f64e1"

Здесь мы видим, что система должна загрузиться с sda2, но на самом деле она пытается загрузиться с sda1.

Смонтируйте том в любой каталог, например:

# sudo mount /dev/sda2 /mnt

Когда вы увидите /dev/sda2 в каталоге /mnt, найдите там файл /etc/fstab и измените строку, содержащую /dev/sda1, следующим образом:

UUID=36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 / ext4 errors=remount-rw 0 1

Сохраните файл. Отключите том из /mnt и перезагрузитесь. Если проблема была связана с неправильным именем тома, сервер загрузился.

Также решить эту проблему можно загрузкой в аварийном режиме. Перемонтируйте корневой каталог для чтения/записи:

# sudo mount -o remount,rw /

Затем измените fstab и перезапустите сервер.

Аппаратная проблема

На некоторых материнских платах портам SATA могут присваиваться случайные номера. Это также может вызвать ошибку, описанную в предыдущем разделе. Чтобы это исправить, вам необходимо отредактировать загрузчик grub.

Загрузитесь в аварийном режиме или с Live CD и отредактируйте файл /boot/grub/grub.cfg.

В строке, определяющей загрузочный том, например:

Linux /boot/vmlinuz-4.15.0-70-generic root=/dev/sda1 rw quiet elevator=noop fsck.repair=yes

Замените путь к диску на его UUID:

Linux /boot/vmlinuz-4.15.0-70-generic root=UUID=36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 ro quiet elevator=noop fsck.repair=yes

Статьи по данной тематике