Attached is now an ugly patch which would display the grub-probe error
"Check your device.map" if it fails.

Else I had the idea to make an environment variable like
GRUB_PROBE_HIDE_ERRORS=1 which would hide the output of
grub_print_error() but then we would need to change grub-common and grub
package to fix this bug.

What do you think Robert?

-- 
Felix Zielcke
Index: update-grub
===================================================================
--- update-grub	(revision 1080)
+++ update-grub	(working copy)
@@ -115,7 +115,8 @@ find_device ()
 	if ! test -e ${device_map} ; then
 		echo quit | grub --batch --no-floppy --device-map=${device_map} > /dev/null
 	fi
-	grub-probe --device-map=${device_map} -t device $1 2> /dev/null
+	grub-probe --device-map=${device_map} -t device $1 2> /dev/null || \
+	(echo "Cannot find a GRUB drive for $1.  Check your device.map." && exit 1)
 }
 
 # Usage: convert_raid1 os_device
@@ -152,7 +153,8 @@ convert () {
 	if ! test -e ${device_map} ; then
 		echo quit | grub --batch --no-floppy --device-map=${device_map} > /dev/null
 	fi
-	GRUB_LEGACY_0_BASED_PARTITIONS=1 grub-probe --device-map=${device_map} -t drive -d "$1" 2> /dev/null
+	GRUB_LEGACY_0_BASED_PARTITIONS=1 grub-probe --device-map=${device_map} -t drive -d "$1" 2> /dev/null || \
+        (echo "Cannot find a GRUB drive for $1.  Check your device.map." && exit 1)
 }
 
 # Usage: convert_default os_device

Reply via email to