Система Debian не монтирует или не находит / sbin / init во время загрузки

Я получаю страшную «целевую файловую систему не запрашивал / sbin / init», я попал в приглашение initramfs busybox и не могу загрузиться. Это происходит после обновления до ядра 4.9.0-3 на Debian. Он работал отлично.

Примерно в нем говорится:

Scanning for BtrFs filesystem usage: mount [-r] [-w] [-o options] [-t type f] [-i] [-n] device directory target filesystem doesn't have requested /sbin/init mount: no such file or directory 

Я попробовал fsck на диске; это нормально. (Я также пробовал fsck -f, чтобы убедиться, что нет.)

Я попытался вручную установить root = / dev / sda4 во время загрузки в меню grub. Опять же, это не помогло.

Я могу успешно установить / dev / sda4 с живого CD:

 $ mount /dev/sda4 /mnt $ mount --bind /proc/ /mnt/proc $ mount --bind /dev/ /mnt/dev $ mount --bind /sys/ /mnt/sys 

и chroot в него:

 $ chroot /mnt 

И я вижу, что / sbin / init действительно существует:

 # ls /sbin/init /sbin/init 

Я могу даже запустить его:

 # /sbin/init Usage: init {-e VAR[=VAL] | [-t SECONDS] {0|1|2|3|4|5|6|S|s|Q|q|A|a|B|b|C|c|U|u}} 

Внутри chroot я попытался запустить «update-initramfs» и «update-grub». Оба побежали успешно, но не помогли.

Кажется, что «update-initramfs» генерирует фиктивный initrd , который не будет правильно монтировать корневую систему.

Он запускает initramfs = 0.120 + deb8u3 и sysvinit-core = 2.88dsf-59.9.

Он не работает cryptofs и btrfs. Это, однако, работает на Mac, если это имеет значение.

Трудно точно узнать, что не так в вашей ситуации, но это сообщение на вашем выходе подозрительно:

 usage: mount [-r] [-w] [-o options] [-t type f] [-i] [-n] device directory 

Мне кажется, что он не устанавливает вашу корневую файловую систему, и эта ошибка является результатом ее попытки.

Прочитайте https://wiki.debian.org/InitramfsDebug, чтобы узнать, как его можно отладить. В последнем разделе «Сохранение отладочной информации» может быть достаточно, чтобы показать, в чем проблема.

Я думаю, что была ошибка или что-то не так с initramfs = 0.120 + deb8u3 (jessie-backports), потому что, когда я обновился до initramfs = 0.130 (стабильный), он загрузился. (Мой следующий шаг состоял бы в том, чтобы обновить udev до стабильного, несмотря на то, что он удалил кучу пакетов, к счастью, я не должен был делать этот шаг.)