1

I have recently reinstalled my Linux Mint 19.2 from a USB which went fine. Upon starting the system, though, it get's stuck at initramfs. The error messages above state

Mount: mounting /dev on /root/dev failed: no such file or directory
Mount: mounting /run on /root/run failed: no such file or directory
run-init: opening console: No such file or directory
Target: filesystem doesn't have requested /sbin/init.
Try passing init= bootarg.

From the initramfs I did an fsck of my root partition sda2 which came up clean. I repeated it with e2fsck with the same result. I booted into the Live-System on the USB again, mounted sda1 (my EFI boot partition) and sda2 and checked the UUID values in grub and fstab which coincided. Now I'm stuck in initramfs again and am looking at the contents of /etc on it and find that fstab has a size of 0 bytes.

(initramfs) ls -la /etc/fs*
-rw-r--r--   1        0 /etc/fstab

Therefore mounting /dev/sda2 is not possible (no entry in fstab). Now, I'm not sure if this is supposed to contain anything at this point, because this is obviously not the fstab lying on /dev/sda2 in /etc, but I'm quite frankly out of ideas of what else might be causing the system not to find the root partition, when grub and fstab as seen from the live system seem to be fine.

BTW, this is the first time I've installed on a system with EFI, with an EFI boot partition (vfat) of 1GB (sda1). I made sure to boot into the live system in EFI mode before installing (in fact I disabled legacy mode in the BIOS so it would only show me the EFI bootable OS's). Is there any other setting I should be aware of that might cause the system not to find its root partition? What would be a value I might pass to the boot loader after init= ?

Feel free to ask for additional information if that helps determine what's wrong here. Thanks!

Added: On sda1 there is a grub.cfg in /EFI/ubuntu with this content:

search.fs_uuid 734be585-8baf-408e-850a-69555c89c955 root hd0,gpt2 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

On sda2 in the /boot/grub folder there is the referenced grub.cfg with among other this content:

export linux_gfx_mode
menuentry 'Linux Mint 19.2 Cinnamon' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-734be585-8baf-408e-850a-69555c89c955' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
    insmod part_gpt
    insmod ext2
    set root='hd0,gpt2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  734be585-8baf-408e-850a-69555c89c955
    else
      search --no-floppy --fs-uuid --set=root 734be585-8baf-408e-850a-69555c89c955
    fi
        linux   /boot/vmlinuz-4.15.0-54-generic root=UUID=734be585-8baf-408e-850a-69555c89c955 ro ignore_bootid live-media-path=/multibootusb/linuxmint-19.2-cinnamon-64bit/casper floppy.allowed_drive_mask=0 ignore_uuid root=UUID=759A-1D86 quiet splash $vt_handoff
    initrd  /boot/initrd.img-4.15.0-54-generic
}

blkid for sda offers this info:

/dev/sda1: UUID="EE9A-4B64" TYPE="vfat" PARTLABEL="boot" PARTUUID="33a95580-f254-4f54-937e-143da0e1e37c"
/dev/sda2: LABEL="/" UUID="734be585-8baf-408e-850a-69555c89c955" TYPE="ext4" PARTLABEL="/" PARTUUID="92a4ec7f-d1f6-441b-abdf-0bc0a9970d0b"
/dev/sda4: LABEL="home" UUID="7b3b371b-6447-4e33-822d-d2535215b863" TYPE="ext4" PARTUUID="70686b24-b09d-4f83-a715-73fb1e4224d1"

sda3 is supposed to be the swap partition, not sure if it's normal not to show up here.

I get fine until grub during the boot process. It's only after choosing either above entry or the accompanying "extended options" entry that I end up with initramfs instead of a login.

  • can you add your kernel boot arguments please? – Daniel Farrell Oct 7 at 15:31
  • OK I feel free ;) You can mount without fstab any time! That is, anytime block device and filesystem are supported. You just have to add device and mountpoint. But DID you tell the system (via grub) root=/dev/sda2 ??? Logically that's what comes BEFORE init=/sbin/init on the kernel command line. And while init=sbin/init is default/optional, root=xxx can not have a default. This could explain the first error messages - nothing to do with a corrupt filesystem. – rastafile Oct 7 at 15:47
  • Ok, I added some info. If that's not what you were asking for, please guide me through where to find it. Thanks. – obelix86 Oct 7 at 18:30
2
Mount: mounting /dev on /root/dev failed: no such file or directory
Mount: mounting /run on /root/run failed: no such file or directory
run-init: opening console: No such file or directory
Target: filesystem doesn't have requested /sbin/init.

Looks like whatever is being mounted as the root filesystem does not have the correct mountpoint directories...

And here's the kernel line of your boot entry, with each boot option on a separate line for clarity.

linux   /boot/vmlinuz-4.15.0-54-generic \
    root=UUID=734be585-8baf-408e-850a-69555c89c955 \
    ro \
    ignore_bootid \
    live-media-path=/multibootusb/linuxmint-19.2-cinnamon-64bit/casper \
    floppy.allowed_drive_mask=0 \
    ignore_uuid \
    root=UUID=759A-1D86 \
    quiet \
    splash

Now you can probably see it: you have two root= options. The later one will override the former. And based on the shortness of the second "UUID", it looks like you'll end up trying to use some FAT filesystem as your root filesystem. It isn't your /dev/sda1, though.

The live-media-path option also looks odd if you're trying to boot an OS that has been fully installed on a HDD.

The first root=UUID=734be585-8baf-408e-850a-69555c89c955 correctly refers to the UUID of your /dev/sda2, so it's the correct one.

My guess is that root=UUID=759A-1D86 probably refers to the USB you installed the system from. Probably the installation process of the UEFI bootloader made an error: it failed to recognize that root=UUID=759A-1D86 was part of the options for booting from the installation media and should not be copied to the finished installation.

You should remove root=UUID=759A-1D86 and probably also live-media-path=/multibootusb/linuxmint-19.2-cinnamon-64bit/casper from your boot options, i.e. both from /boot/grub/grub.cfg and from /etc/default/grub in /dev/sda2, if they exist. The former should remove the immediate problem; the latter should prevent the problem from reoccurring any time you install a kernel update or run update-grub for any other reason.

The /multibootusb in the live-media-path= option makes me think you might have done the installation with something like MultiBootUSB rather than with a "vanilla" Mint 19.2 installation media. Such automated solutions need to rebuild the bootloader configuration to build their boot menu, and don't always manage to do it perfectly.

ignore_uuid is for casper live media utility which is not used with an HDD-installed OS, and the ignore_bootid seems also to be associated with casper. The floppy.allowed_drive_mask=0 just tells the kernel to skip floppy drive detection, which might in usual cases speed up booting by maybe 3 seconds or so. (On some older laptops with a non-traditional floppy drive setup it might be necessary to prevent a hang at boot.)

You can very likely remove all those three boot options, but just to be safe, when the system is in GRUB boot menu, press E to edit the current boot entry (just for this particular boot) and remove those boot options there. If you then can boot successfully, you know you can remove them from the actual configuration files - if the system hangs at boot without those options, just reset the system and it will boot normally again.

  • 1) I think this is a correct and good answer 2) I "knew it" five hours ago, see comment in Q 3) A boot from UEFI Shell with vmlinuz, initrd= and root= would have worked 4) I don't use grub or UUIDs, I would not have found that wrong root= entry so easily! – rastafile Oct 7 at 21:44
  • @telcoM Genius, thanks a lot. Your edits did the trick indeed. I assumed because they came after these "ignore_bootid" and "ignore_uuid" they would be ignored, but apparently that's not what they're for. I am utterly unfamiliar with all those parameters (and didn't find much online about them either). Now I'm wondering if I can get rid of those "ignore..." parameters and the floppy-parameter as well. Thoughts? – obelix86 Oct 8 at 0:11
  • Oh. and you were right about the UUID - it's the ID of the EFI on the memory stick. The odd thing is: I installed five times yesterday, every time slightly changing my setups because I thought it was me. But apparently the installer for Linux Mint 19.2 has some flaw that leaves these parameters in there... – obelix86 Oct 8 at 0:16
  • @obelix86 I've edited my answer to add my thoughts on those three boot options. – telcoM Oct 8 at 12:03

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.