OS prober chooses /dev/sdX notation when UUIDs requested

Bug #570947 reported by Jane Atkinson
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
os-prober (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Binary package hint: os-prober

OS prober insists on identifying one of my installations by /dev/sdXY notation, even though it's told to use UUIDs.

All the rest of them are correctly identified by UUID.

Here is the grub.cfg file.

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/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 recordfail {
  set recordfail=1
  if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd2,1)'
search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
insmod ext2
set root='(hd2,1)'
search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.34-020634rc5-generic' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 linux /boot/vmlinuz-2.6.34-020634rc5-generic root=UUID=d458c1cf-f605-477d-84de-305d54731aee ro quiet splash
 initrd /boot/initrd.img-2.6.34-020634rc5-generic
}
menuentry 'Ubuntu, with Linux 2.6.34-020634rc5-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 echo 'Loading Linux 2.6.34-020634rc5-generic ...'
 linux /boot/vmlinuz-2.6.34-020634rc5-generic root=UUID=d458c1cf-f605-477d-84de-305d54731aee ro single
 echo 'Loading initial ramdisk ...'
 initrd /boot/initrd.img-2.6.34-020634rc5-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 linux /boot/vmlinuz-2.6.32-21-generic root=UUID=d458c1cf-f605-477d-84de-305d54731aee ro quiet splash
 initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 echo 'Loading Linux 2.6.32-21-generic ...'
 linux /boot/vmlinuz-2.6.32-21-generic root=UUID=d458c1cf-f605-477d-84de-305d54731aee ro single
 echo 'Loading initial ramdisk ...'
 initrd /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
 insmod ext2
 set root='(hd2,1)'
 search --no-floppy --fs-uuid --set d458c1cf-f605-477d-84de-305d54731aee
 linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Debian GNU/Linux, with Linux 2.6.32-3-686 (on /dev/sda2)" {
 insmod ext2
 set root='(hd0,2)'
 search --no-floppy --fs-uuid --set 675f6d2c-0119-4eac-81c8-e8e00fd8598b
 linux /boot/vmlinuz-2.6.32-3-686 root=UUID=675f6d2c-0119-4eac-81c8-e8e00fd8598b ro quiet
 initrd /boot/initrd.img-2.6.32-3-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.32-3-686 (recovery mode) (on /dev/sda2)" {
 insmod ext2
 set root='(hd0,2)'
 search --no-floppy --fs-uuid --set 675f6d2c-0119-4eac-81c8-e8e00fd8598b
 linux /boot/vmlinuz-2.6.32-3-686 root=UUID=675f6d2c-0119-4eac-81c8-e8e00fd8598b ro single
 initrd /boot/initrd.img-2.6.32-3-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-686 (on /dev/sda2)" {
 insmod ext2
 set root='(hd0,2)'
 search --no-floppy --fs-uuid --set 675f6d2c-0119-4eac-81c8-e8e00fd8598b
 linux /boot/vmlinuz-2.6.30-2-686 root=UUID=675f6d2c-0119-4eac-81c8-e8e00fd8598b ro quiet
 initrd /boot/initrd.img-2.6.30-2-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-686 (recovery mode) (on /dev/sda2)" {
 insmod ext2
 set root='(hd0,2)'
 search --no-floppy --fs-uuid --set 675f6d2c-0119-4eac-81c8-e8e00fd8598b
 linux /boot/vmlinuz-2.6.30-2-686 root=UUID=675f6d2c-0119-4eac-81c8-e8e00fd8598b ro single
 initrd /boot/initrd.img-2.6.30-2-686
}
menuentry "Ubuntu, with Linux 2.6.32-21-generic (on /dev/sda3)" {
 insmod ext2
 set root='(hd0,3)'
 search --no-floppy --fs-uuid --set 9b5b6654-a0a0-4a62-bd59-a6b61e3d7197
 linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9b5b6654-a0a0-4a62-bd59-a6b61e3d7197 ro quiet splash
 initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry "Ubuntu, with Linux 2.6.32-21-generic (recovery mode) (on /dev/sda3)" {
 insmod ext2
 set root='(hd0,3)'
 search --no-floppy --fs-uuid --set 9b5b6654-a0a0-4a62-bd59-a6b61e3d7197
 linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9b5b6654-a0a0-4a62-bd59-a6b61e3d7197 ro single
 initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry "Ubuntu 8.04.4 LTS (8.04) (on /dev/sdc6)" {
 insmod ext2
 set root='(hd2,6)'
 search --no-floppy --fs-uuid --set 2dd04c68-6a98-456d-b7fc-fb4255ac090c
 linux /boot/vmlinuz-2.6.24-27-generic root=/dev/sdc6 <<-- *This is the culprit.
 initrd /boot/initrd.img-2.6.24-27-generic
}
### 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.
menuentry "Ubuntu 8.04.4 LTS (8.04) (manual)" {
        insmod ext2
        set root='(hd0,6)'
        search --no-floppy --fs-uuid --set 2dd04c68-6a98-456d-b7fc-fb4255ac090c
        linux /vmlinuz root=UUID=2dd04c68-6a98-456d-b7fc-fb4255ac090c ro quiet splash <<--this is my workaround
        initrd /initrd.img
}

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: os-prober 1.38
ProcVersionSignature: Ubuntu 2.6.32-21.32-generic 2.6.32.11+drm33.2
Uname: Linux 2.6.32-21-generic i686
Architecture: i386
Date: Wed Apr 28 08:49:54 2010
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Release Candidate i386 (20100419.1)
ProcEnviron:
 PATH=(custom, user)
 LANG=en_NZ.utf8
 SHELL=/bin/bash
SourcePackage: os-prober

Revision history for this message
Jane Atkinson (irihapeti) wrote :
Revision history for this message
Jane Atkinson (irihapeti) wrote :

I've marked the affected entry with <<--*This is the culprit.

It's an entry for Ubuntu 8.04.4 at the end of the OS prober entries.

The custom entry at the end is a workaround.

tags: added: iso-testing
Revision history for this message
Jane Atkinson (irihapeti) wrote :

Bug still present in 10.04 final.

Revision history for this message
Jane Atkinson (irihapeti) wrote :

I was playing with Debian Stable yesterday and I noticed that grub2 in Lucid would not use UUIDs for its menu entries.

Lucid also uses /dev/sdX notation. Since Debian uses /dev/hdX for IDE drives, the entries are unusable and I had to create a custom workaround.

The problem arises with Hardy (2.6.24) and Debian Stable (2.6.26), but not with Debian Testing (2.6.32 and 2.6.30)

Does this have something to do with older kernels or libraries, perhaps?

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in os-prober (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.