CentOS(with XEN)&Ubuntu双系统引导的问题


说是双系统,其实是三系统(还包括XP),但问题不在于XP,暂时把它忽略掉。。。
首先系统上有XP,保留之。
然后安装了CentOS5.4(选择安装了Virtualization-->Virutalization,即安装系统的时候安装了XEN)。
最后安装了Ubuntu10.04。
结果:能够顺利进入XP和Ubuntu10.04,但无法进入CentOS5.4,提示说:Error:invalid magic number。
试了网上的各种方法,依然无法进入CentOS5.4。。。
最后看到一个说法:grub2有一些bug会导致xen无法正常启动,所以需要删除grub2,换回老版本grub。。。


基本步骤:
1、备份
sudo cp /etc/default/grub   /etc/default/grub.old
sudo cp -R /etc/grub.d   /etc/grub.d.old
sudo cp -R /boot/grub    /boot/grub.old
2、卸载grub2
sudo apt-get purge grub2 grub-pc
3、安装grub
sudo apt-get install grub
4、更新启动菜单项及安装grub到相应设备
sudo update-grub                         #产生menu.lst;有提示时选择Yes
sudo grub-install   /dev/sdX          #X为a,b,c……一般而言为Ubuntu系统所在设备


XP引导项:
title               Microsoft Windows XP Professional
root               (hdX,Y)
makeactive
chainloader   +1


CentOS引导项:
tiltle              CentOS(2.6.8)
# 启动XEN
uuid              XXXX
kernel           /boot/xen.gz……
module         /boot/vmlinuz……  ro root=LABEL=/ rhgb quiet
moudle         /boot/initrd…….img
# 不带XEN启动
root              (hdX,Y)
kernel           /boot/vmlinuz…… ro root=LABEL=/ rhgb quiet
initrd            /boot/initrd…….img


其他:
1、查看设备的UUID:
sudo dumpe2fs  /dev/sdXY | grep UUID                  # X为设备号,Y为分区;可以查看任意设备的UUID
sudo grub-probe  -t  fs_uuid  /boot/grub                  # 缺陷:只能查看当前系统所在设备分区的UUID
2、注意区别:
grub中第一个设备从0开始,第一个分区从0开始;grub2中第一个设备从0开始,第一个分区从1开始。
3、重装操作系统会导致UUID不一样,即使是不作任何改变地在同一分区重装亦如此。

相关内容