[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#614143: os-prober: generated linux entries don't use UUIDs for root= parameter



Package: os-prober
Version: 1.49ubuntu1
Followup-For: Bug #614143

Dear Maintainer,
Issuing update-grub command sometimes creates menu entries
for coexisting linux installations with 
root=/dev/sdaX parameter at "linux" line.

My CentOS likes to name my drive at random "sda" or "sdb"
so entry mentioned above likes to cause CentOS boot to fail.

-------

I fixed my problem locally by applying following patch to:
/usr/lib/linux-boot-probes/mounted/90fallback.

#v+
--- linux-boot-probes/mounted/common/90fallback	2011-09-16 14:29:55.000000000 +0200
+++ /usr/lib/linux-boot-probes/mounted/90fallback	2011-12-13 18:55:53.000000000 +0100
@@ -2,6 +2,10 @@
 # Fallback in case nothing else works. Look for vmlinu[xz] file in root and
 # /boot, see if there is a matching initrd, and wing it.
 . /usr/share/os-prober/common.sh
+if [ -f /etc/default/grub ] ; then
+	. /etc/default/grub
+fi
+
 set -e
 
 partition="$1"
@@ -11,6 +15,10 @@
 
 mappedpartition=$(mapdevfs "$partition" 2>/dev/null) || mappedpartition="$partition"
 
+if [ "x${GRUB_OSPROBER_FALLBACK_USE_UUID}" = "xtrue" ] ; then
+	mappedpartition=$(blkid -s UUID -o export ${partition})
+fi
+
 exitcode=1
 for kernpat in /vmlinuz /vmlinux /boot/vmlinuz /boot/vmlinux "/boot/vmlinuz*" \
 	        "/boot/vmlinux*" "/vmlinuz*" "/vmlinux*" "/kernel-*" "/boot/kernel-*"; do
#v-

and added:

#v+

# Uncomment to use UUID for root= option on kernel line
# for coexisting linux installations for last resort configuration attempt.
GRUB_OSPROBER_FALLBACK_USE_UUID=true

#v-

to /etc/default/grub.

After I rerun update-grub required entries were in place, i.e.
CentOS menu entry had root=UUID=xxxxx-xxxx-xxxxx-xxxxx parameter at "linux" line.

-- System Information:
Debian Release: wheezy/sid
  APT prefers precise-updates
  APT policy: (500, 'precise-updates'), (500, 'precise')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.39-3-generic (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=pl_PL (charmap=ISO-8859-2)
Shell: /bin/sh linked to /bin/dash

Versions of packages os-prober depends on:
ii  libc6  2.13-20ubuntu10

os-prober recommends no packages.

os-prober suggests no packages.

-- no debconf information


-- 
  Huginn
GCS d? s: a C++$() UBLS++++$ P++ L++++$ E---
W+(-) N++ w-- O M- V- PS+ PE++ Y PGP-
t--- 5-- X- R !tv b++ DI+++ D+ G e* h r++ y**



Reply to: