1

I'm getting the dreaded "target filesystem doesn't have requested /sbin/init", am getting dropped into initramfs busybox prompt, and am unable to boot. This is after upgrading to the latest 4.9.0-3 kernel on Debian. It was working perfectly before.

Approximately, it says:

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

I tried fsck on the disk; it is fine. (I also tried fsck -f to make sure. No go.)

I tried manually setting root=/dev/sda4 during boot in the grub menu. Again, didn't help.

I can successfully mount /dev/sda4 from a live CD:

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

and chroot into it:

$ chroot /mnt

And I can see that /sbin/init does indeed exist:

# ls /sbin/init
/sbin/init

I can even run it:

# /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}}

Within the chroot, I tried running "update-initramfs" and "update-grub". Both ran successfully, but neither helped.

It seems as if "update-initramfs" is generating a bogus initrd that won't mount the root system properly.

It is running initramfs=0.120+deb8u3 and sysvinit-core=2.88dsf-59.9.

It is not running cryptofs nor btrfs. It is, however, running on a Mac, if that matters.

  • could it be udev? unix.stackexchange.com/questions/305343/… – Rui F Ribeiro Jul 10 '17 at 2:32
  • Not sure. udev=230-7~bpo8+2 which seems to work on my other computers. (Attempting to downgrade this via apt-get removes a whole bunch of stuff, so I left it.) – roberttheprogrammer Jul 10 '17 at 3:25
  • It is not about rebuilding it, but having it enabled on boot – Rui F Ribeiro Jul 10 '17 at 11:51
  • 1
    It is enabled on boot. Otherwise, I would not have been able to mount /dev/sda4 by hand from the initramfs prompt. In fact, as far as I can tell, the entire /dev is being populated in full and correctly. It appears to be a problem in the /init script within the busybox environment. Still investigating... – roberttheprogrammer Jul 10 '17 at 13:38
3

It's hard to know exactly what's wrong in your situation, but this message in your output is suspicious:

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

It looks to me that it is not mounting your root filesystem and this error is the result of it trying.

Have a read of https://wiki.debian.org/InitramfsDebug to see how you can debug it further. The last section on "Saving debug information" might reveal enough to suggest what the problem might be.

1

I think there was a bug or something wrong with initramfs=0.120+deb8u3 (jessie-backports) because when I upgraded to initramfs=0.130 (stable), it boots. (My next step would have been to upgrade udev to stable, despite it removing a bunch of packages; thankfully, I didn't have to take that step.)

  • If you think there is a bug, you should report it. – Faheem Mitha Jul 10 '17 at 14:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.