mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
pygrub: Support (/dev/xvda) style disk specifications
You get these if you install Debian Wheezy as HVM and then try to convert to PV. This is Debian bug #603391. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Tested-by: Tril <tril@metapipe.net> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
This commit is contained in:
1 parent
a77eb86f44
commit
b2e55da3cd
2 files changed
+109
-1
No files matched your search
@@ -0,0 +1,104 @@
|
||||
|
||||
#
|
||||
# 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 part_msdos
|
||||
insmod ext2
|
||||
set root='(/dev/xvda,msdos1)'
|
||||
search --no-floppy --fs-uuid --set=root f395d5a0-4612-4872-806c-33cd37c152f0
|
||||
if loadfont /usr/share/grub/unicode.pf2 ; then
|
||||
set gfxmode=640x480
|
||||
load_video
|
||||
insmod gfxterm
|
||||
insmod part_msdos
|
||||
insmod ext2
|
||||
set root='(/dev/xvda,msdos1)'
|
||||
search --no-floppy --fs-uuid --set=root f395d5a0-4612-4872-806c-33cd37c152f0
|
||||
set locale_dir=($root)/boot/grub/locale
|
||||
set lang=en_US
|
||||
insmod gettext
|
||||
fi
|
||||
terminal_output gfxterm
|
||||
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 3.2.0-4-amd64' --class debian --class gnu-linux --class gnu --class os {
|
||||
load_video
|
||||
insmod gzio
|
||||
insmod part_msdos
|
||||
insmod ext2
|
||||
set root='(/dev/xvda,msdos1)'
|
||||
search --no-floppy --fs-uuid --set=root f395d5a0-4612-4872-806c-33cd37c152f0
|
||||
echo 'Loading Linux 3.2.0-4-amd64 ...'
|
||||
linux /boot/vmlinuz-3.2.0-4-amd64 root=UUID=f395d5a0-4612-4872-806c-33cd37c152f0 ro
|
||||
echo 'Loading initial ramdisk ...'
|
||||
initrd /boot/initrd.img-3.2.0-4-amd64
|
||||
}
|
||||
menuentry 'Debian GNU/Linux, with Linux 3.2.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
|
||||
load_video
|
||||
insmod gzio
|
||||
insmod part_msdos
|
||||
insmod ext2
|
||||
set root='(/dev/xvda,msdos1)'
|
||||
search --no-floppy --fs-uuid --set=root f395d5a0-4612-4872-806c-33cd37c152f0
|
||||
echo 'Loading Linux 3.2.0-4-amd64 ...'
|
||||
linux /boot/vmlinuz-3.2.0-4-amd64 root=UUID=f395d5a0-4612-4872-806c-33cd37c152f0 ro single
|
||||
echo 'Loading initial ramdisk ...'
|
||||
initrd /boot/initrd.img-3.2.0-4-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/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 ###
|
||||
@@ -67,7 +67,11 @@ class GrubDiskPart(object):
|
||||
return self._disk
|
||||
def set_disk(self, val):
|
||||
val = val.replace("(", "").replace(")", "")
|
||||
self._disk = int(val[2:])
|
||||
if val.startswith("/dev/xvd"):
|
||||
disk = val[len("/dev/xvd")]
|
||||
self._disk = ord(disk)-ord('a')
|
||||
else:
|
||||
self._disk = int(val[2:])
|
||||
disk = property(get_disk, set_disk)
|
||||
|
||||
def get_part(self):
|
||||
|
||||