You are not logged in.

#1 2020-03-06 17:01:06

alf9009
Member
Registered: 2020-02-29
Posts: 9

[SOLVED] unable to mount root fs on unknown-block(0,0)

I have a setup with a full disk encryption, including encrypted /boot, but my problem is not booting the encrypted systen, but the non encrypted rescue system.

sda: bios grub, uses /boot at sda3
sda1: win10
sda2: win10
sda3: luks1(btrfs(/boot + /root + /home))
sda4: ext4(/boot + /root + /home)

As said, booting sda3 works fine.
The problem is, booting my not encrypted rescue system at sda4:
If I select sda4 from grub boot loader menu (after decryption), it won't boot:

kernel panic - not syncing: VFS: unable to mount root fs on unknown-block(0,0)

But: the not encrypted rescue system at sda4 will boot normally in 2 cases:
- I select the initramfs-linux-fallback.img
- or when I rewrite grub at /sda to point at sda4

I suspect, something is missing in my initramfs.

But both /etc/mkinitcpio.conf are the same:
MODULES=(btrfs ext4)
HOOKS=(base systemd keyboard sd-vconsole autodetect modconf block sd-encrypt filesystems fsck)

Any ideas ?

Last edited by alf9009 (2020-03-15 10:56:45)

Offline

#2 2020-03-09 19:11:42

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

I did some guessing, I added these, and then regenerated mkinitcpio inside sda4:

MODULES=(btrfs ext4 dm_crypt sd_mod pata_acpi ata_generic ata_piix)

Still no luck, same error.

Offline

#3 2020-03-09 21:45:42

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Do you need the dm_crypt module if your fallback system (which I assume it what you're referring to as your rescue system) on sda4?  It's not encrypted you say.

I can't really help here in general though.  I only run an encrypted home defined solely by my fstab as I recall.  I don't think I needed to define any special modules in my mkinitcpio to do that.

Last edited by levi (2020-03-09 21:46:15)


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#4 2020-03-10 06:41:03

deep42thought
Administrator
From: Jena, Germany
Registered: 2017-06-17
Posts: 471

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

I'm not really familiar with the topic either, but it sounds like the bootloader tries to boot the unencrypted sda4 with the initramdisk of the encrypted one.
The second "this-works" option sounds like the one you should actually use: point the bootloader at the correct partition and use kernel+initramdisk from there. You should create an according boot menu entry (or let grub-mkconfig create one).

hth,
deep42thought

Offline

#5 2020-03-10 08:30:23

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Presumably if it's trying to read the initramfs off the encrypted partition, it'd be pretty obvious because I would assume it's asking for a password to unlock to do that, or maybe loading a key from some other device which should at least log.  I've seen no indication that it's doing that, although to be fair exactly how it fails to boot hasn't been posted yet I think.

Actually, looking at the error message posted in the OP again, I'm thinking it's worth checking the kernel parameters in grub.  Sounds like you have a kernel, which came from the correct partition which actually contains everything you need, but it thinks your rootfs is on a different partition.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#6 2020-03-10 16:06:37

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

levi wrote:

Do you need the dm_crypt module if your fallback system (which I assume it what you're referring to as your rescue system) on sda4?  It's not encrypted you say.

yes: fallback == rescue == sda4 / unencrypted
I'm not sure what's missing, so I added it, one module in addition is not so fatal as one is missing. :-)

deep42thought wrote:

I'm not really familiar with the topic either, but it sounds like the bootloader tries to boot the unencrypted sda4 with the initramdisk of the encrypted one.

I'll post the grub.cfg, I think this will show, that each system will use it's correct /boot kernel and initrd, I hope.


levi wrote:

Sounds like you have a kernel, which came from the correct partition which actually contains everything you need, but it thinks your rootfs is on a different partition.

Oh thats a good idea!
How to check on runtime, which kernel and intitrd was used for booting and from which location ?


grub.cfg, auto generated:

# /boot/grub/grub.cfg

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"                                                                                                                                                                                                                           
fi                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                             
if [ x"${feature_menuentry_id}" = xy ]; then                                                                                                                                                                                                 
  menuentry_id_option="--id"                                                                                                                                                                                                                 
else                                                                                                                                                                                                                                         
  menuentry_id_option=""                                                                                                                                                                                                                     
fi                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                             
export menuentry_id_option                                                                                                                                                                                                                   
                                                                                                                                                                                                                                             
if [ "${prev_saved_entry}" ]; then                                                                                                                                                                                                           
  set saved_entry="${prev_saved_entry}"                                                                                                                                                                                                      
  save_env saved_entry                                                                                                                                                                                                                       
  set prev_saved_entry=                                                                                                                                                                                                                      
  save_env prev_saved_entry                                                                                                                                                                                                                  
  set boot_once=true                                                                                                                                                                                                                         
fi                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                             
function savedefault {                                                                                                                                                                                                                       
  if [ -z "${boot_once}" ]; then                                                                                                                                                                                                             
    saved_entry="${chosen}"                                                                                                                                                                                                                  
    save_env saved_entry                                                                                                                                                                                                                     
  fi                                                                                                                                                                                                                                         
}                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
function load_video {                                                                                                                                                                                                                        
  if [ x$feature_all_video_module = xy ]; then                                                                                                                                                                                               
    insmod all_video                                                                                                                                                                                                                         
  else                                                                                                                                                                                                                                       
    insmod efi_gop                                                                                                                                                                                                                           
    insmod efi_uga                                                                                                                                                                                                                           
    insmod ieee1275_fb                                                                                                                                                                                                                       
    insmod vbe                                                                                                                                                                                                                               
    insmod vga                                                                                                                                                                                                                               
    insmod video_bochs                                                                                                                                                                                                                       
    insmod video_cirrus                                                                                                                                                                                                                      
  fi                                                                                                                                                                                                                                         
}                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
if [ x$feature_default_font_path = xy ] ; then                                                                                                                                                                                               
   font=unicode                                                                                                                                                                                                                              
else                                                                                                                                                                                                                                         
insmod part_msdos                                                                                                                                                                                                                            
insmod cryptodisk                                                                                                                                                                                                                            
insmod luks                                                                                                                                                                                                                                  
insmod gcry_serpent                                                                                                                                                                                                                          
insmod gcry_serpent                                                                                                                                                                                                                          
insmod gcry_sha256                                                                                                                                                                                                                           
insmod btrfs                                                                                                                                                                                                                                 
cryptomount -u 4197ff1c630342189950b471cb846bbb                                                                                                                                                                                              
set root='cryptouuid/4197ff1c630342189950b471cb846bbb'                                                                                                                                                                                       
if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                                             
  search --no-floppy --fs-uuid --set=root --hint='cryptouuid/4197ff1c630342189950b471cb846bbb'  2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                         
else                                                                                                                                                                                                                                         
  search --no-floppy --fs-uuid --set=root 2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                                                                               
fi                                                                                                                                                                                                                                           
    font="/@r/usr/share/grub/unicode.pf2"                                                                                                                                                                                                    
fi                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                             
if loadfont $font ; then                                                                                                                                                                                                                     
  set gfxmode=auto                                                                                                                                                                                                                           
  load_video                                                                                                                                                                                                                                 
  insmod gfxterm                                                                                                                                                                                                                             
  set locale_dir=$prefix/locale                                                                                                                                                                                                              
  set lang=en_DK                                                                                                                                                                                                                             
  insmod gettext                                                                                                                                                                                                                             
fi                                                                                                                                                                                                                                           
terminal_input console                                                                                                                                                                                                                       
terminal_output gfxterm                                                                                                                                                                                                                      
if [ x$feature_timeout_style = xy ] ; then                                                                                                                                                                                                   
  set timeout_style=menu                                                                                                                                                                                                                     
  set timeout=5                                                                                                                                                                                                                              
# Fallback normal timeout code in case the timeout_style feature is                                                                                                                                                                          
# unavailable.                                                                                                                                                                                                                               
else                                                                                                                                                                                                                                         
  set timeout=5                                                                                                                                                                                                                              
fi                                                                                                                                                                                                                                           
### END /etc/grub.d/00_header ###                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
### BEGIN /etc/grub.d/10_linux ###                                                                                                                                                                                                           
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-2683b1c7-75da-480d-a6f9-4ad36c40f117' {                                                                                   
        load_video                                                                                                                                                                                                                           
        set gfxpayload=keep                                                                                                                                                                                                                  
        insmod gzio                                                                                                                                                                                                                          
        insmod part_msdos                                                                                                                                                                                                                    
        insmod cryptodisk                                                                                                                                                                                                                    
        insmod luks                                                                                                                                                                                                                          
        insmod gcry_serpent                                                                                                                                                                                                                  
        insmod gcry_serpent                                                                                                                                                                                                                  
        insmod gcry_sha256                                                                                                                                                                                                                   
        insmod btrfs                                                                                                                                                                                                                         
        cryptomount -u 4197ff1c630342189950b471cb846bbb                                                                                                                                                                                      
        set root='cryptouuid/4197ff1c630342189950b471cb846bbb'                                                                                                                                                                               
        if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                                     
          search --no-floppy --fs-uuid --set=root --hint='cryptouuid/4197ff1c630342189950b471cb846bbb'  2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                 
        else                                                                                                                                                                                                                                 
          search --no-floppy --fs-uuid --set=root 2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                                                                       
        fi                                                                                                                                                                                                                                   
        echo    'Loading Linux linux ...'                                                                                                                                                                                                    
        linux   /@r/boot/vmlinuz-linux root=UUID=2683b1c7-75da-480d-a6f9-4ad36c40f117 rw rootflags=subvol=@r  loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                                  
        echo    'Loading initial ramdisk ...'                                                                                                                                                                                                
        initrd  /@r/boot/intel-ucode.img /@r/boot/initramfs-linux.img                                                                                                                                                                        
}                                                                                                                                                                                                                                            
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-2683b1c7-75da-480d-a6f9-4ad36c40f117' {                                                                                                                    
        menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-2683b1c7-75da-480d-a6f9-4ad36c40f117' {                                                 
                load_video                                                                                                                                                                                                                   
                set gfxpayload=keep                                                                                                                                                                                                          
                insmod gzio                                                                                                                                                                                                                  
                insmod part_msdos                                                                                                                                                                                                            
                insmod cryptodisk                                                                                                                                                                                                            
                insmod luks                                                                                                                                                                                                                  
                insmod gcry_serpent                                                                                                                                                                                                          
                insmod gcry_serpent                                                                                                                                                                                                          
                insmod gcry_sha256                                                                                                                                                                                                           
                insmod btrfs                                                                                                                                                                                                                 
                cryptomount -u 4197ff1c630342189950b471cb846bbb                                                                                                                                                                              
                set root='cryptouuid/4197ff1c630342189950b471cb846bbb'                                                                                                                                                                       
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                             
                  search --no-floppy --fs-uuid --set=root --hint='cryptouuid/4197ff1c630342189950b471cb846bbb'  2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                         
                else                                                                                                                                                                                                                         
                  search --no-floppy --fs-uuid --set=root 2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                                                               
                fi                                                                                                                                                                                                                           
                echo    'Loading Linux linux ...'                                                                                                                                                                                            
                linux   /@r/boot/vmlinuz-linux root=UUID=2683b1c7-75da-480d-a6f9-4ad36c40f117 rw rootflags=subvol=@r  loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                          
                echo    'Loading initial ramdisk ...'                                                                                                                                                                                        
                initrd  /@r/boot/intel-ucode.img /@r/boot/initramfs-linux.img                                                                                                                                                                
        }                                                                                                                                                                                                                                    
        menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-2683b1c7-75da-480d-a6f9-4ad36c40f117' {                            
                load_video                                                                                                                                                                                                                   
                set gfxpayload=keep                                                                                                                                                                                                          
                insmod gzio                                                                                                                                                                                                                  
                insmod part_msdos                                                                                                                                                                                                            
                insmod cryptodisk                                                                                                                                                                                                            
                insmod luks                                                                                                                                                                                                                  
                insmod gcry_serpent                                                                                                                                                                                                          
                insmod gcry_serpent                                                                                                                                                                                                          
                insmod gcry_sha256                                                                                                                                                                                                           
                insmod btrfs                                                                                                                                                                                                                 
                cryptomount -u 4197ff1c630342189950b471cb846bbb                                                                                                                                                                              
                set root='cryptouuid/4197ff1c630342189950b471cb846bbb'                                                                                                                                                                       
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                             
                  search --no-floppy --fs-uuid --set=root --hint='cryptouuid/4197ff1c630342189950b471cb846bbb'  2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                         
                else                                                                                                                                                                                                                         
                  search --no-floppy --fs-uuid --set=root 2683b1c7-75da-480d-a6f9-4ad36c40f117                                                                                                                                               
                fi                                                                                                                                                                                                                           
                echo    'Loading Linux linux ...'                                                                                                                                                                                            
                linux   /@r/boot/vmlinuz-linux root=UUID=2683b1c7-75da-480d-a6f9-4ad36c40f117 rw rootflags=subvol=@r  loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                          
                echo    'Loading initial ramdisk ...'                                                                                                                                                                                        
                initrd  /@r/boot/initramfs-linux-fallback.img                                                                                                                                                                                
        }                                                                                                                                                                                                                                    
}                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
### END /etc/grub.d/10_linux ###                                                                                                                                                                                                             
                                                                                                                                                                                                                                             
### BEGIN /etc/grub.d/20_linux_xen ###                                                                                                                                                                                                       
### END /etc/grub.d/20_linux_xen ###                                                                                                                                                                                                         
                                                                                                                                                                                                                                             
### BEGIN /etc/grub.d/30_os-prober ###                                                                                                                                                                                                       
menuentry 'Windows 10 (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-C4668B7C668B6E4C' {                                                                                                                    
        insmod part_msdos                                                                                                                                                                                                                    
        insmod ntfs                                                                                                                                                                                                                          
        set root='hd0,msdos1'                                                                                                                                                                                                                
        if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                                     
          search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  C4668B7C668B6E4C                                                     
        else                                                                                                                                                                                                                                 
          search --no-floppy --fs-uuid --set=root C4668B7C668B6E4C                                                                                                                                                                           
        fi                                                                                                                                                                                                                                   
        parttool ${root} hidden-                                                                                                                                                                                                             
        drivemap -s (hd0) ${root}                                                                                                                                                                                                            
        chainloader +1                                                                                                                                                                                                                       
}                                                                                                                                                                                                                                            
menuentry 'Arch Linux 32 (on /dev/sda4)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-37107726-d387-47fe-bec9-1422f8e92042' {                                                        
        insmod part_msdos                                                                                                                                                                                                                    
        insmod ext2                                                                                                                                                                                                                          
        set root='hd0,msdos4'                                                                                                                                                                                                                
        if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                                     
          search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos4' --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4  37107726-d387-47fe-bec9-1422f8e92042                                 
        else                                                                                                                                                                                                                                 
          search --no-floppy --fs-uuid --set=root 37107726-d387-47fe-bec9-1422f8e92042                                                                                                                                                       
        fi                                                                                                                                                                                                                                   
        linux /boot/vmlinuz-linux root=UUID=37107726-d387-47fe-bec9-1422f8e92042 rw loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                                                            
        initrd /boot/intel-ucode.img                                                                                                                                                                                                         
}                                                                                                                                                                                                                                            
submenu 'Advanced options for Arch Linux 32 (on /dev/sda4)' $menuentry_id_option 'osprober-gnulinux-advanced-37107726-d387-47fe-bec9-1422f8e92042' {                                                                                         
        menuentry 'Arch Linux (on /dev/sda4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--37107726-d387-47fe-bec9-1422f8e92042' {                                                  
                insmod part_msdos                                                                                                                                                                                                            
                insmod ext2                                                                                                                                                                                                                  
                set root='hd0,msdos4'                                                                                                                                                                                                        
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                             
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos4' --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4  37107726-d387-47fe-bec9-1422f8e92042                         
                else                                                                                                                                                                                                                         
                  search --no-floppy --fs-uuid --set=root 37107726-d387-47fe-bec9-1422f8e92042                                                                                                                                               
                fi                                                                                                                                                                                                                           
                linux /boot/vmlinuz-linux root=UUID=37107726-d387-47fe-bec9-1422f8e92042 rw loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                                                    
                initrd /boot/intel-ucode.img                                                                                                                                                                                                 
        }                                                                                                                                                                                                                                    
        menuentry 'Arch Linux, with Linux linux (on /dev/sda4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--37107726-d387-47fe-bec9-1422f8e92042' {                                
                insmod part_msdos                                                                                                                                                                                                            
                insmod ext2                                                                                                                                                                                                                  
                set root='hd0,msdos4'                                                                                                                                                                                                        
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                             
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos4' --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4  37107726-d387-47fe-bec9-1422f8e92042                         
                else                                                                                                                                                                                                                         
                  search --no-floppy --fs-uuid --set=root 37107726-d387-47fe-bec9-1422f8e92042                                                                                                                                               
                fi                                                                                                                                                                                                                           
                linux /boot/vmlinuz-linux root=UUID=37107726-d387-47fe-bec9-1422f8e92042 rw loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                                                    
                initrd /boot/intel-ucode.img                                                                                                                                                                                                 
        }                                                                                                                                                                                                                                    
        menuentry 'Arch Linux, with Linux linux (fallback initramfs) (on /dev/sda4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--37107726-d387-47fe-bec9-1422f8e92042' {           
                insmod part_msdos                                                                                                                                                                                                            
                insmod ext2                                                                                                                                                                                                                  
                set root='hd0,msdos4'                                                                                                                                                                                                        
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                             
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos4' --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4  37107726-d387-47fe-bec9-1422f8e92042                         
                else                                                                                                                                                                                                                         
                  search --no-floppy --fs-uuid --set=root 37107726-d387-47fe-bec9-1422f8e92042                                                                                                                                               
                fi                                                                                                                                                                                                                           
                linux /boot/vmlinuz-linux root=UUID=37107726-d387-47fe-bec9-1422f8e92042 rw loglevel=3 quiet audit=0 nowatchdog iommu=off                                                                                                    
                initrd /boot/initramfs-linux-fallback.img                                                                                                                                                                                    
        }                                                                                                                                                                                                                                    
}                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
### END /etc/grub.d/30_os-prober ###                                                                                                                                                                                                         
                                                                                                                                                                                                                                             
### BEGIN /etc/grub.d/40_custom ###                                                                                                                                                                                                          
# This file provides an easy way to add custom menu entries.  Simply type the                                                                                                                                                                
# menu entries you want to add after this comment.  Be careful not to change                                                                                                                                                                 
# the 'exec tail' line above.                                                                                                                                                                                                                
### END /etc/grub.d/40_custom ###                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
### BEGIN /etc/grub.d/41_custom ###                                                                                                                                                                                                          
if [ -f  ${config_directory}/custom.cfg ]; then                                                                                                                                                                                              
  source ${config_directory}/custom.cfg                                                                                                                                                                                                      
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then                                                                                                                                                                            
  source $prefix/custom.cfg;                                                                                                                                                                                                                 
fi                                                                                                                                                                                                                                           
### END /etc/grub.d/41_custom ###                                                                                                                                                                                                            

ok    menuentry 'Arch Linux'
ok    menuentry 'Windows 10 (on /dev/sda1)'
fail    menuentry 'Arch Linux 32 (on /dev/sda4)'
fail    menuentry 'Arch Linux (on /dev/sda4)'
fail    menuentry 'Arch Linux, with Linux linux (on /dev/sda4)'
ok    menuentry 'Arch Linux, with Linux linux (fallback initramfs) (on /dev/sda4)'



no major modifications here:

# /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet audit=0 nowatchdog iommu=off"
GRUB_ENABLE_CRYPTODISK=y

Offline

#7 2020-03-15 07:04:40

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Looks like the builder built the initrd lines wrongly.  You should be left with something like /boot/initramfs-linux.img on those lines, not intel-ucode.img (whatever that is).

There may be more to it, but that's the only weirdness I spotted on my initial run through.

Edit: In practice that's likely to be something wrong in your /etc/grub.d/10-linux file about 58% of the way through the file (according to less) is where that line is constructed by the automatic builders.

Mine looks like this:

 if test -n "${initrd}" ; then
    # TRANSLATORS: ramdisk isn't identifier. Should be translated.
    message="$(gettext_printf "Loading initial ramdisk ...")"
    initrd_path=
    for i in ${initrd}; do
      initrd_path="${initrd_path} ${rel_dirname}/${i}"
    done
    sed "s/^/$submenu_indentation/" << EOF
        echo    '$(echo "$message" | grub_quote)'
        initrd  $(echo $initrd_path)
EOF
  fi

Edit2: Actually looks like those lines come from 30-os-prober, but I haven't figured out exactly what's going on there.  Line 210 seems to derive the initrd to use, but that comes from a call to linux-boot-prober which doesn't seem to be present on my grub-based systems.

Last edited by levi (2020-03-15 07:42:24)


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#8 2020-03-15 10:56:22

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

levi wrote:

Looks like the builder built the initrd lines wrongly.  You should be left with something like /boot/initramfs-linux.img on those lines, not intel-ucode.img (whatever that is).

Ohh! YES ! That's the problem. Thanks for spotting this!!!
I overlooked it, I was searching the error in the initramfs-linux.img...

I have now created my own simple grub entry, to boot from the encrypted sda3 the unencrypted sda4:

#!/bin/sh -e
# sudoedit /etc/grub.d/90_sda4
# sudo chmod +x /etc/grub.d/90_*; ls -la /etc/grub.d/
# sudo grub-mkconfig -o /boot/grub/grub.cfg

echo "Found ARCH sda4" >&2
cat << EOF
menuentry "ARCH sda4"  {
        insmod part_msdos
	insmod part_gpt
        insmod btrfs
	insmod ext2
        insmod gzio
        set root='hd0,msdos4'
        echo    'Loading Linux linux ...'
        linux   /boot/vmlinuz-linux rw loglevel=3 quiet audit=0 nowatchdog iommu=off  root=/dev/sda4
        echo    'Loading initial ramdisk ...'
        initrd  /boot/intel-ucode.img /boot/initramfs-linux.img
}
EOF

Should have done this earlier, shame on my head.


BTW, intel-ucode.img is the Microcode update files for Intel CPUs, intel-ucode package.


Thanks very much for your help levi !

Offline

#9 2020-03-15 20:39:09

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Okay, that's good to hear.  You might also need an entry for the initrd on sda4 failback because the one bullt by 30-os-prober doesn't include the intel-ucode.img unless that's done deliberately to discriminate from microcode introduced errors.

I'm not sure why my system hasn't got intel-ucode.img included but perhaps it's because it's using such an old CPU - a Pentum branded E2220 if I recall correctly.  I know it has more leakage avenues than the equally old Atom cpu in my netbook, but lscpu says 'not affected' for all my vulnerabilities on my Atom CPU, so that's not surprising.  It's core microarchitecture-based, so I'd expect some more vulnerabilities, but perhaps it doesn't have the exact ones addressed by that microcode drop?

Edit: It also doesn't answer why 30-os-prober built the initrc line wrong.  Maybe it's been scuppered by the introduction of this new microcode entry that's broken things.  Out of interest, on which OS did you build this grub.cfg - on an upstream 64-bit archlinux or on our OS?

Last edited by levi (2020-03-15 23:17:33)


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#10 2020-03-16 19:48:38

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

initramfs-linux-fallback.img
Thanks for the tipp, I know it's there, but I never was in trouble to use it at any machine in the last 8 years. But I know how to use the "e" Key in grub menu :-)

microcode update:
[    0.130078] microcode: microcode updated early to revision 0x218, date = 2009-04-10   
So it's used, I have an Asus 1000h netbook, Intel(R) Atom(TM) CPU N270   @ 1.60GHz 

The 30-os-prober, and all the arch's on this machine are original arch32 OS :-)
Only the Windows 10 is from M$ :-(  - but I use it very seldom ;-)

I was curious:
I removed from the un-encrypted sda4 the intel-ucode.img in the / folder, and then let os-probe and grub rebuild the grub.cfg on the encrypted sda3 system:

diff 3 4                                                                                                        
202c202                                                                                                                       
<       initrd /boot/intel-ucode.img                                                                                          
---                                                                                                                           
>       initrd /boot/initramfs-linux.img                                                                                      
215c215                                                                                                                       
<               initrd /boot/intel-ucode.img                                                                                  
---                                                                                                                           
>               initrd /boot/initramfs-linux.img                                                                              
227c227                                                                                                                       
<               initrd /boot/intel-ucode.img                                                                                  
---                                                                                                                           
>               initrd /boot/initramfs-linux.img                                                                              

That would have solved it too.
The os-prober 1.77-1.0 in arch32 is the same as in arch64, or do we have some special modifications ?
If not the error could also be in upstream arch64. Or there is some arch32 specific issue like the the bug "keyboard layout not honored on boot" I remember.

Offline

#11 2020-03-17 03:48:59

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

I don't have grub set up on my netbook; I remember having trouble getting it working, so I went for syslinux as used by the boot isos.  But i do use it on my arch64 boxen since that seemed the simplest way to set up my encrypted home folder there.

I don't recall hearing about a difference with os-prober, so I expect it's built from the same source as the 64-bit one.  There might just be a missing patch though as recently happened with strip.sh.

I do have intel-ucode.img on my netbook by the way, although I'd still not sure it's actually necessary.  I don't have it on my 64-bit box where it might be more useful though.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#12 2020-03-18 19:39:28

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

instead of os-probe (ok I need it still for the WIn 10 part) I have found a better way for any another Linux OS, in general I think,
the unencrpted sda4 is almost complete, /boot,  grub, grub.cfg, etc.
so I use now grub "configfile" command to "chainload" the other partition - no need to inpect any kernel, initram files before on that partition, also all special kernel parameters etc for this partition are kept:

#!/bin/sh -e
# sudoedit /etc/grub.d/91_configfile_hd0_msdos4
# sudo chmod --verbose +x /etc/grub.d/91*
# sudo grub-mkconfig -o /boot/grub/grub.cfg

DEVICE="hd0,msdos4";

echo "Found configfile ${DEVICE}" >&2
cat << EOF
menuentry "configfile ${DEVICE}"  {
        insmod part_msdos
	insmod part_gpt
        insmod btrfs
	insmod ext2
	set root='${DEVICE}'
	configfile /boot/grub/grub.cfg
}
EOF

When choosing this grub entry, grub loads on-the-fly this grub.cfg file from the other partition and shows that menu :-)

Offline

#13 2020-03-18 23:30:25

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 569

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Yes, that may be a slightly simpler fix to you but it doesn't explain why 30-os-probe is so hideously broken [might be an exaggeration].  I tried running linux-os-probe on my 64-bit machine, but I only have one OS installed there and it didn't report anything, so I don't actually know how it's mean to work in practice.

I'll have to have a look at my 30-os-probe which is currently only on my 64-bit box which I don't run during the daytime for power reasons.  I'll update the post with any more if I can come up with anything after looking at that.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Offline

#14 2020-03-22 18:49:12

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

I reproduced the issue on arch64, in a vbox, minimal setup, no encryption, simple setup with  ext4 on sda1 and sda2,
If I have time a make a bug report.

[root@archlinux ~]# cat /boot/grub/grub.cfg                                                                                                                                                                                         
#                                                                                                                                                                                                                                   
# DO NOT EDIT THIS FILE                                                                                                                                                                                                             
#                                                                                                                                                                                                                                   
# It is automatically generated by grub-mkconfig using templates                                                                                                                                                                    
# from /etc/grub.d and settings from /etc/default/grub                                                                                                                                                                              
#                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/00_header ###                                                                                                                                                                                                 
insmod part_gpt                                                                                                                                                                                                                     
insmod part_msdos                                                                                                                                                                                                                   
if [ -s $prefix/grubenv ]; then                                                                                                                                                                                                     
  load_env                                                                                                                                                                                                                          
fi                                                                                                                                                                                                                                  
if [ "${next_entry}" ] ; then                                                                                                                                                                                                       
   set default="${next_entry}"                                                                                                                                                                                                      
   set next_entry=                                                                                                                                                                                                                  
   save_env next_entry                                                                                                                                                                                                              
   set boot_once=true                                                                                                                                                                                                               
else                                                                                                                                                                                                                                
   set default="0"                                                                                                                                                                                                                  
fi                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                    
if [ x"${feature_menuentry_id}" = xy ]; then                                                                                                                                                                                        
  menuentry_id_option="--id"                                                                                                                                                                                                        
else                                                                                                                                                                                                                                
  menuentry_id_option=""                                                                                                                                                                                                            
fi                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                    
export menuentry_id_option                                                                                                                                                                                                          
                                                                                                                                                                                                                                    
if [ "${prev_saved_entry}" ]; then                                                                                                                                                                                                  
  set saved_entry="${prev_saved_entry}"                                                                                                                                                                                             
  save_env saved_entry                                                                                                                                                                                                              
  set prev_saved_entry=                                                                                                                                                                                                             
  save_env prev_saved_entry                                                                                                                                                                                                         
  set boot_once=true                                                                                                                                                                                                                
fi                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                    
function savedefault {                                                                                                                                                                                                              
  if [ -z "${boot_once}" ]; then                                                                                                                                                                                                    
    saved_entry="${chosen}"                                                                                                                                                                                                         
    save_env saved_entry                                                                                                                                                                                                            
  fi                                                                                                                                                                                                                                
}                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
function load_video {                                                                                                                                                                                                               
  if [ x$feature_all_video_module = xy ]; then                                                                                                                                                                                      
    insmod all_video                                                                                                                                                                                                                
  else                                                                                                                                                                                                                              
    insmod efi_gop                                                                                                                                                                                                                  
    insmod efi_uga                                                                                                                                                                                                                  
    insmod ieee1275_fb                                                                                                                                                                                                              
    insmod vbe                                                                                                                                                                                                                      
    insmod vga                                                                                                                                                                                                                      
    insmod video_bochs                                                                                                                                                                                                              
    insmod video_cirrus                                                                                                                                                                                                             
  fi                                                                                                                                                                                                                                
}                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
if [ x$feature_default_font_path = xy ] ; then                                                                                                                                                                                      
   font=unicode                                                                                                                                                                                                                     
else                                                                                                                                                                                                                                
insmod part_msdos                                                                                                                                                                                                                   
insmod ext2                                                                                                                                                                                                                         
set root='hd0,msdos1'                                                                                                                                                                                                               
if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                                    
  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  cc390cf7-a88c-43ec-9170-f07b6f072115                                
else                                                                                                                                                                                                                                
  search --no-floppy --fs-uuid --set=root cc390cf7-a88c-43ec-9170-f07b6f072115                                                                                                                                                      
fi                                                                                                                                                                                                                                  
    font="/usr/share/grub/unicode.pf2"                                                                                                                                                                                              
fi                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                    
if loadfont $font ; then                                                                                                                                                                                                            
  set gfxmode=auto                                                                                                                                                                                                                  
  load_video                                                                                                                                                                                                                        
  insmod gfxterm                                                                                                                                                                                                                    
fi                                                                                                                                                                                                                                  
terminal_input console                                                                                                                                                                                                              
terminal_output gfxterm                                                                                                                                                                                                             
if [ x$feature_timeout_style = xy ] ; then                                                                                                                                                                                          
  set timeout_style=menu                                                                                                                                                                                                            
  set timeout=5                                                                                                                                                                                                                     
# Fallback normal timeout code in case the timeout_style feature is                                                                                                                                                                 
# unavailable.                                                                                                                                                                                                                      
else                                                                                                                                                                                                                                
  set timeout=5                                                                                                                                                                                                                     
fi                                                                                                                                                                                                                                  
### END /etc/grub.d/00_header ###                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/10_linux ###                                                                                                                                                                                                  
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-cc390cf7-a88c-43ec-9170-f07b6f072115' {                                                                          
        load_video                                                                                                                                                                                                                  
        set gfxpayload=keep                                                                                                                                                                                                         
        insmod gzio                                                                                                                                                                                                                 
        insmod part_msdos                                                                                                                                                                                                           
        insmod ext2                                                                                                                                                                                                                 
        set root='hd0,msdos1'                                                                                                                                                                                                       
        if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                            
          search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  cc390cf7-a88c-43ec-9170-f07b6f072115                        
        else                                                                                                                                                                                                                        
          search --no-floppy --fs-uuid --set=root cc390cf7-a88c-43ec-9170-f07b6f072115                                                                                                                                              
        fi                                                                                                                                                                                                                          
        echo    'Loading Linux linux ...'                                                                                                                                                                                           
        linux   /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw  loglevel=3 quiet                                                                                                                             
        echo    'Loading initial ramdisk ...'                                                                                                                                                                                       
        initrd  /boot/intel-ucode.img /boot/initramfs-linux.img                                                                                                                                                                     
}                                                                                                                                                                                                                                   
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-cc390cf7-a88c-43ec-9170-f07b6f072115' {                                                                                                           
        menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-cc390cf7-a88c-43ec-9170-f07b6f072115' {                                        
                load_video                                                                                                                                                                                                          
                set gfxpayload=keep                                                                                                                                                                                                 
                insmod gzio                                                                                                                                                                                                         
                insmod part_msdos                                                                                                                                                                                                   
                insmod ext2                                                                                                                                                                                                         
                set root='hd0,msdos1'                                                                                                                                                                                               
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                    
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  cc390cf7-a88c-43ec-9170-f07b6f072115                
                else                                                                                                                                                                                                                
                  search --no-floppy --fs-uuid --set=root cc390cf7-a88c-43ec-9170-f07b6f072115                                                                                                                                      
                fi                                                                                                                                                                                                                  
                echo    'Loading Linux linux ...'                                                                                                                                                                                   
                linux   /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw  loglevel=3 quiet                                                                                                                     
                echo    'Loading initial ramdisk ...'                                                                                                                                                                               
                initrd  /boot/intel-ucode.img /boot/initramfs-linux.img                                                                                                                                                             
        }                                                                                                                                                                                                                           
        menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-cc390cf7-a88c-43ec-9170-f07b6f072115' {                   
                load_video                                                                                                                                                                                                          
                set gfxpayload=keep                                                                                                                                                                                                 
                insmod gzio                                                                                                                                                                                                         
                insmod part_msdos                                                                                                                                                                                                   
                insmod ext2                                                                                                                                                                                                         
                set root='hd0,msdos1'                                                                                                                                                                                               
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                    
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  cc390cf7-a88c-43ec-9170-f07b6f072115                
                else                                                                                                                                                                                                                
                  search --no-floppy --fs-uuid --set=root cc390cf7-a88c-43ec-9170-f07b6f072115                                                                                                                                      
                fi                                                                                                                                                                                                                  
                echo    'Loading Linux linux ...'                                                                                                                                                                                   
                linux   /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw  loglevel=3 quiet                                                                                                                     
                echo    'Loading initial ramdisk ...'                                                                                                                                                                               
                initrd  /boot/initramfs-linux-fallback.img                                                                                                                                                                          
        }                                                                                                                                                                                                                           
}                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
### END /etc/grub.d/10_linux ###                                                                                                                                                                                                    
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/20_linux_xen ###                                                                                                                                                                                              
### END /etc/grub.d/20_linux_xen ###                                                                                                                                                                                                
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/30_os-prober ###                                                                                                                                                                                              
menuentry 'Arch Linux (on /dev/sda2)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-3b0cff66-3232-4588-b41a-3767c06eedcd' {                                                  
        insmod part_msdos                                                                                                                                                                                                           
        insmod ext2                                                                                                                                                                                                                 
        set root='hd0,msdos2'                                                                                                                                                                                                       
        if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                            
          search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos2' --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  3b0cff66-3232-4588-b41a-3767c06eedcd                        
        else                                                                                                                                                                                                                        
          search --no-floppy --fs-uuid --set=root 3b0cff66-3232-4588-b41a-3767c06eedcd                                                                                                                                              
        fi                                                                                                                                                                                                                          
        linux /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw loglevel=3 quiet                                                                                                                                
        initrd /boot/intel-ucode.img                                                                                                                                                                                                
}                                                                                                                                                                                                                                   
submenu 'Advanced options for Arch Linux (on /dev/sda2)' $menuentry_id_option 'osprober-gnulinux-advanced-3b0cff66-3232-4588-b41a-3767c06eedcd' {                                                                                   
        menuentry 'Arch Linux (on /dev/sda2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--3b0cff66-3232-4588-b41a-3767c06eedcd' {                                         
                insmod part_msdos                                                                                                                                                                                                   
                insmod ext2                                                                                                                                                                                                         
                set root='hd0,msdos2'                                                                                                                                                                                               
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                    
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos2' --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  3b0cff66-3232-4588-b41a-3767c06eedcd                
                else                                                                                                                                                                                                                
                  search --no-floppy --fs-uuid --set=root 3b0cff66-3232-4588-b41a-3767c06eedcd                                                                                                                                      
                fi                                                                                                                                                                                                                  
                linux /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw loglevel=3 quiet                                                                                                                        
                initrd /boot/intel-ucode.img                                                                                                                                                                                        
        }                                                                                                                                                                                                                           
        menuentry 'Arch Linux, with Linux linux (on /dev/sda2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--3b0cff66-3232-4588-b41a-3767c06eedcd' {                       
                insmod part_msdos                                                                                                                                                                                                   
                insmod ext2                                                                                                                                                                                                         
                set root='hd0,msdos2'                                                                                                                                                                                               
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                    
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos2' --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  3b0cff66-3232-4588-b41a-3767c06eedcd                
                else                                                                                                                                                                                                                
                  search --no-floppy --fs-uuid --set=root 3b0cff66-3232-4588-b41a-3767c06eedcd                                                                                                                                      
                fi                                                                                                                                                                                                                  
                linux /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw loglevel=3 quiet                                                                                                                        
                initrd /boot/intel-ucode.img                                                                                                                                                                                        
        }                                                                                                                                                                                                                           
        menuentry 'Arch Linux, with Linux linux (fallback initramfs) (on /dev/sda2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--3b0cff66-3232-4588-b41a-3767c06eedcd' {  
                insmod part_msdos                                                                                                                                                                                                   
                insmod ext2                                                                                                                                                                                                         
                set root='hd0,msdos2'                                                                                                                                                                                               
                if [ x$feature_platform_search_hint = xy ]; then                                                                                                                                                                    
                  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos2' --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  3b0cff66-3232-4588-b41a-3767c06eedcd                
                else                                                                                                                                                                                                                
                  search --no-floppy --fs-uuid --set=root 3b0cff66-3232-4588-b41a-3767c06eedcd                                                                                                                                      
                fi                                                                                                                                                                                                                  
                linux /boot/vmlinuz-linux root=UUID=cc390cf7-a88c-43ec-9170-f07b6f072115 rw loglevel=3 quiet                                                                                                                        
                initrd /boot/initramfs-linux-fallback.img                                                                                                                                                                           
        }                                                                                                                                                                                                                           
}                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
### END /etc/grub.d/30_os-prober ###                                                                                                                                                                                                
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/40_custom ###                                                                                                                                                                                                 
# This file provides an easy way to add custom menu entries.  Simply type the                                                                                                                                                       
# menu entries you want to add after this comment.  Be careful not to change                                                                                                                                                        
# the 'exec tail' line above.                                                                                                                                                                                                       
### END /etc/grub.d/40_custom ###                                                                                                                                                                                                   
                                                                                                                                                                                                                                    
### BEGIN /etc/grub.d/41_custom ###                                                                                                                                                                                                 
if [ -f  ${config_directory}/custom.cfg ]; then                                                                                                                                                                                     
  source ${config_directory}/custom.cfg                                                                                                                                                                                             
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then                                                                                                                                                                   
  source $prefix/custom.cfg;                                                                                                                                                                                                        
fi                                                                                                                                                                                                                                  
### END /etc/grub.d/41_custom ###                                                                                                                                                                                                   

Offline

#15 2020-03-22 18:53:57

alf9009
Member
Registered: 2020-02-29
Posts: 9

Re: [SOLVED] unable to mount root fs on unknown-block(0,0)

Offline

Board footer

Powered by FluxBB