---原始邮件---
发件人: "big strong "<fangtu...@gmail.com>
发送时间: 2015年09月04日 02:07:05
收件人: "xen-devel"<xen-devel@lists.xen.org>;
主题: how to boot from multiple xen version?
I've installed xen4.4 on ubuntu1404 with aptitude. Recently, in order to test the Xen4.6, I manually compiled and installed Xen4.6 without remove the Xen4.4. Now the machine cannot boot normally. I mean booting stop at a sceen shows:
Loading Xen Xen.
WARNING: No Console will be available to OS.
Loading linux 3.13.0-24-generic ...
Loading initial ramdisk ...
Actually, I'm ok with this. Because I can still connect the dom0 using ssh before installing Xen 4.6. But after the installing, the network cannot be connected,
This is the grub.cfg file in /boot/grub/:
## 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
set have_grubenv=true
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="Ubuntu GNU/Linux, with Xen hypervisor"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
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
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod lvm
insmod ext2
set root='lvmid/D6XXXa-yAcw-xbjd-5AXp-wzhu-gzU1-7avET9/kiowbS-lgZx-J4Us-toiX-mc4m-xZgB-2dA2JA'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/D6XXXa-yAcw-xbjd-5AXp-wzhu-gzU1-7avET9/kiowbS-lgZx-J4Us-toiX-mc4m-xZgB-2dA2JA' 0f4768d7-64dd-4e80-819d-1f58b4150505
else
search --no-floppy --fs-uuid --set=root 0f4768d7-64dd-4e80-819d-1f58b4150505
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_HK
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=-1
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=2
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=2
fi
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/09_linux_xen ###
menuentry 'Ubuntu GNU/Linux, with Xen hypervisor' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-simple-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen xen ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen.gz placeholder dom0_mem=8192M,max:8192M ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
submenu 'Advanced options for Ubuntu GNU/Linux (with Xen hypervisor)' $menuentry_id_option 'gnulinux-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
submenu 'Xen hypervisor, version xen' $menuentry_id_option 'xen-hypervisor-xen-0f4768d7-64dd-4e80-819d-1f58b4150505' {
menuentry 'Ubuntu GNU/Linux, with Xen xen and Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen xen ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen.gz placeholder dom0_mem=8192M,max:8192M ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
menuentry 'Ubuntu GNU/Linux, with Xen xen and Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-recovery-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen xen ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen.gz placeholder ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro single
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
}
submenu 'Xen hypervisor, version 4' $menuentry_id_option 'xen-hypervisor-4-0f4768d7-64dd-4e80-819d-1f58b4150505' {
menuentry 'Ubuntu GNU/Linux, with Xen 4 and Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4 ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.gz placeholder dom0_mem=8192M,max:8192M ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
menuentry 'Ubuntu GNU/Linux, with Xen 4 and Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-recovery-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4 ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.gz placeholder ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro single
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
}
submenu 'Xen hypervisor, version 4.6' $menuentry_id_option 'xen-hypervisor-4.6-0f4768d7-64dd-4e80-819d-1f58b4150505' {
menuentry 'Ubuntu GNU/Linux, with Xen 4.6 and Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4.6 ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.6.gz placeholder dom0_mem=8192M,max:8192M ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
menuentry 'Ubuntu GNU/Linux, with Xen 4.6 and Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-recovery-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4.6 ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.6.gz placeholder ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro single
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
}
submenu 'Xen hypervisor, version 4.6.0-rc' $menuentry_id_option 'xen-hypervisor-4.6.0-rc-0f4768d7-64dd-4e80-819d-1f58b4150505' {
menuentry 'Ubuntu GNU/Linux, with Xen 4.6.0-rc and Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4.6.0-rc ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.6.0-rc.gz placeholder dom0_mem=8192M,max:8192M ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
menuentry 'Ubuntu GNU/Linux, with Xen 4.6.0-rc and Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-3.13.0-24-generic-recovery-0f4768d7-64dd-4e80-819d-1f58b4150505' {
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Xen 4.6.0-rc ...'
if [ "$grub_platform" = "pc" -o "$grub_platform" = "" ]; then
xen_rm_opts=
else
xen_rm_opts="no-real-mode edd=off"
fi
multiboot /xen-4.6.0-rc.gz placeholder ${xen_rm_opts}
echo 'Loading Linux 3.13.0-24-generic ...'
module /vmlinuz-3.13.0-24-generic placeholder root=/dev/mapper/storage--vg-root ro single
echo 'Loading initial ramdisk ...'
module --nounzip /initrd.img-3.13.0-24-generic
}
}
}
### END /etc/grub.d/09_linux_xen ###
### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=vt.handoff=7
else
set vt_handoff=
fi
}
if [ "${recordfail}" != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0f4768d7-64dd-4e80-819d-1f58b4150505' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
linux /vmlinuz-3.13.0-24-generic.efi.signed root=/dev/mapper/storage--vg-root ro
initrd /initrd.img-3.13.0-24-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
menuentry 'Ubuntu, with Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-24-generic-advanced-0f4768d7-64dd-4e80-819d-1f58b4150505' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Linux 3.13.0-24-generic ...'
linux /vmlinuz-3.13.0-24-generic.efi.signed root=/dev/mapper/storage--vg-root ro
echo 'Loading initial ramdisk ...'
initrd /initrd.img-3.13.0-24-generic
}
menuentry 'Ubuntu, with Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-24-generic-recovery-0f4768d7-64dd-4e80-819d-1f58b4150505' {
recordfail
load_video
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
else
search --no-floppy --fs-uuid --set=root 0a900dc0-5839-4ffc-9b16-f5f513ae2d99
fi
echo 'Loading Linux 3.13.0-24-generic ...'
linux /vmlinuz-3.13.0-24-generic.efi.signed root=/dev/mapper/storage--vg-root ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /initrd.img-3.13.0-24-generic
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###
### 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 ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
And the network configuration:
# The loopback network interface
auto lo em1 xenbr0
iface lo inet loopback
allow-hotplug xenbr0
iface xenbr0 inet static
address 172.16.105.204
netmask 255.255.255.0
network 172.16.105.0
broadcast 172.16.105.255
gateway 172.16.105.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 172.16.100.180
#bridge_ports em1
# The primary network interface
iface em1 inet manual
The network configuration works fine fine with xen4.4. But the network cannot connected after I compiled xen4.6, even after I removed xen4.4.
Is there anything wrong? I believe it's the problem of grub configuration. But I can't figure out where it is. Besides, can two xen version exists together on one host? I'm now regret in upgrading cause everything now seems in fuzzy and sucks.
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel