Ubuntu 10.04发布了,随即裸机安装了Windows XP ,然后用U盘启动盘安装了Ubuntu 10.04,安装速度飞快(不到10分钟吧),但是装上后发现在grub启动项里没有XP,郁闷了,花了几分钟终于解决了,呵呵~
以下是修改后的grub.cfg, 依照个人分区情况不同进行修改~~
进入Ubuntu10.04,在终端中键入以下命令,
sudo gedit /boot/grub.cfg
对比以下修改相应的XP启动项,保存退出,然后就OK了!
---------------------------------以下为grub.cfg的内容:-------------------------------
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/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
##如果要开机默认启动项为XP,那么这里set default改为XP启动序号,比如这里为4,即:set default="4"
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 recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
set locale_dir=($root)/boot/grub/locale
set lang=zh
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
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/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=27cc65d6-0513-4f68-8c42-901f871052ae ro quiet splash
initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
echo 'Loading Linux 2.6.32-21-generic ...'
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=27cc65d6-0513-4f68-8c42-901f871052ae ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd0,8)'
search --no-floppy --fs-uuid --set 27cc65d6-0513-4f68-8c42-901f871052ae
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
##这里加入XP启动项参数↓
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows XP (on /dev/sda1)" {
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set B2CC3F5FCC3F1CD3 ##刚才抄下的UUID放这里!
chainloader +1
}
### END /etc/grub.d/30_os-prober ###