Bug#590216: [grub-pc]

Mario J. Barchéin Molina mario at terragiro.es
Wed Jul 28 23:42:15 UTC 2010


Same problem here. It seems that, agter update, grub-probe doesn't detect the 
correct UUID for the root partition md,

My system:

mario at judas:~$ cat /proc/mdstat 
Personalities : [raid1] 
md0 : active (auto-read-only) raid1 sdc2[0] sdd2[1]
      144512 blocks [2/2] [UU]
      
md2 : active raid1 sdb3[0] sda3[2]
      486191028 blocks super 1.1 [2/2] [UU]
      
md1 : active raid1 sda1[0] sdb1[1]
      240832 blocks [2/2] [UU]



* md0  is my shared data RAID
* md1  contains /boot
* md2  has the root partition


---------------------------------------------------
mario at judas:~$ sudo tune2fs -l /dev/md0 | grep UUID
Filesystem UUID:          b49925e4-ffa2-4c89-9696-f0e5b093195f
mario at judas:~$ sudo tune2fs -l /dev/md1 | grep UUID
Filesystem UUID:          bf675e32-c65a-4e54-9686-ef0500234471
mario at judas:~$ sudo tune2fs -l /dev/md2 | grep UUID
Filesystem UUID:          c5425cb9-8834-4b64-a694-fdc75da3c189


mario at judas:~$ sudo grub-probe --device /dev/md0 --target=fs_uuid
b49925e4-ffa2-4c89-9696-f0e5b093195f
mario at judas:~$ sudo grub-probe --device /dev/md1 --target=fs_uuid
bf675e32-c65a-4e54-9686-ef0500234471
mario at judas:~$ sudo grub-probe --device /dev/md2 --target=fs_uuid
b49925e4-ffa2-4c89-9696-f0e5b093195f  


There's a mismatch in the last grub-probe over my root partition. The correct 
UUID is c5425cb9-8834-4b64-a694-fdc75da3c189, reported by tune2fs. grub-probe 
returs the same UUID as md0

---------------------------------------------------
mario at judas:~$ mount
/dev/md2 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/md1 on /boot type ext3 (rw)
/dev/sdf2 on /mnt/ST3250823A_5ND24XY1 type reiserfs (rw)
/dev/mapper/vg_almacen-descargas on /mnt/vg_almacen-descargas type xfs (rw) 
fusectl on /sys/fs/fuse/connections type fusectl (rw)

 * /dev/mapper/vg_almacen-descargas is md0. It has an LVM logical drive

---------------------------------------------------
mario at judas:~$ 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 ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
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 {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod raid
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md1)'
search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
if loadfont /grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
if terminal_output gfxterm ; then true ; else
  # For backward compatibility with versions of terminal.mod that don't
  # understand terminal_output
  terminal gfxterm
fi
insmod raid
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md1)'
search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
set locale_dir=($root)/grub/locale
set lang=
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class 
gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-5-amd64 ...'
        linux   /vmlinuz-2.6.32-5-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-5-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64 (recovery mode)' --
class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-5-amd64 ...'
        linux   /vmlinuz-2.6.32-5-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro single 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-5-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-3-amd64' --class debian --class 
gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-3-amd64 ...'
        linux   /vmlinuz-2.6.32-3-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-3-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-3-amd64 (recovery mode)' --
class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-3-amd64 ...'
        linux   /vmlinuz-2.6.32-3-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro single 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-3-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-2-amd64' --class debian --class 
gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-2-amd64 ...'
        linux   /vmlinuz-2.6.32-2-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-2-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-2-amd64 (recovery mode)' --
class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        echo    'Loading Linux 2.6.32-2-amd64 ...'
        linux   /vmlinuz-2.6.32-2-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro single 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-2-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        linux16 /memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        linux16 /memtest86+.bin console=ttyS0,115200n8
}
menuentry "Memory test (memtest86+, experimental multiboot)" {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        multiboot       /memtest86+_multiboot.bin
}
menuentry "Memory test (memtest86+, serial console 115200, experimental 
multiboot)" {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md1)'
        search --no-floppy --fs-uuid --set bf675e32-c65a-4e54-9686-ef0500234471
        multiboot       /memtest86+_multiboot.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
### 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  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###



look at 
	linux   /vmlinuz-2.6.32-5-amd64 root=UUID=b49925e4-ffa2-4c89-9696-
f0e5b093195f ro  quiet

It tries to mount md0 as the root partition. It should be md2
---------------------------------------------------

Is there any way to woraround this problem? I am modifying grub.cfg by hand to 
make my system bootable again.

Thanks.

-- 
Mario J. Barchéin Molina - Terragiro T.I.
<mario at terragiro.es>





More information about the Pkg-grub-devel mailing list