Bug#601974: Bug persists, workaround

Heywood Floyd soul8o8 at gmail.com
Wed May 25 11:49:30 UTC 2011


Hello!

Have the same problem.
Running Debian Squeeze 64bit on a Xen VPS.
As follows, can't upgrade kernel with apt-get.


***

Workaround
Found the following steps to at least allow a kernel upgrade:
(Assuming grub-probe complains about /dev/xvda1)

Run:

	$ mknod /dev/xvdb b 202 0

(Assuming there's no already existing device named xvdb, xvdb1 or xvdb2 etc.)
Edit /boot/grub/devices.map to look like:

	(hd0)  /dev/xvdb

In /usr/sbin/grub-update find:

	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
	}

..and comment out one line and add one line as follows:

	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
	        echo /dev/xvdb
	}

Then run:

	$ apt-get upgrade

..assuming this attempts to upgrade the kernel.
If successfull edit /boot/grub/menu.lst with:
	
	$ sed -i "s/xvdb/xvda1/g" /boot/grub/menu.lst

Perhaps also revert the edit in /usr/sbin/grup-update for good measure.
Reboot.
Worked for me.

(Workaround originally found at http://www.sysadmintalk.net/forums/Thread-PyGrub-grub-probe-can-t-find-drive-for-dev-xvda1-error-Debian-Squeeze , although that didn't work for me without some slight modifications, included above.)


BR
/HF




More information about the Pkg-grub-devel mailing list