下载grub4dos
http://code.google.com/p/grub4dos-chena ... loads/list
grub4dos-0.4.5b-2010-12-30.7z
(
因为我不喜欢这个更新
2010-12-31 更新
2.hiddenmenu命令增强。增加一个--chkpass参数
功能: 在隐藏菜单的时候按Esc键要输入正确的密码才可以显示菜单。
注意: 1.该功能启用之后,如果按了其它按键则直接启动默认菜单。
默认的Esc按键可以自由设置。使用--chkpass=KEY
2.菜单初始化有password命令时才需要输入密码。
3.按键代码如果不清楚可以使用上面的功能来获取。
例子: hiddenmenu --chkpass=0x8500 按F11键才可以显示菜单。
hiddenmenu --chkpass 按Esc键才可以显示菜单。
hiddenmenu --chkpass=0x2200 按Alt+G显示菜单。
)
解压
把grldr放在C盘根目录
修改C:\boot.ini
加
C:\GRLDR="Start GRUB"
windows 7的情况
把grldr grldr.mbr放在C盘根目录
修改C:\boot.ini
加
C:\GRLDR.MBR="Start GRUB"
编辑文件
C:\menu.lst
内容来自
/boot/grub2/grub.cfg
代码: 全选
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora (3.3.6-3.fc17.x86_64)' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7da680b2-c704-4829-a583-d2a970a909cf' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos9'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 --hint='hd0,msdos9' 7da680b2-c704-4829-a583-d2a970a909cf
else
search --no-floppy --fs-uuid --set=root 7da680b2-c704-4829-a583-d2a970a909cf
fi
echo 'Loading Fedora (3.3.6-3.fc17.x86_64)'
linux /boot/vmlinuz-3.3.6-3.fc17.x86_64 root=UUID=7da680b2-c704-4829-a583-d2a970a909cf ro rd.md=0 rd.lvm=0 rd.dm=0 SYSFONT=True KEYTABLE=us rd.luks=0 LANG=en_US.UTF-8 rhgb quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.3.6-3.fc17.x86_64.img
}
submenu 'Advanced options for Fedora Linux' $menuentry_id_option 'gnulinux-advanced-7da680b2-c704-4829-a583-d2a970a909cf' {
}
if [ "x$default" = 'Fedora Linux, with Linux 3.3.0-1.fc17.x86_64' ]; then default='Advanced options for Fedora Linux>Fedora Linux, with Linux 3.3.0-1.fc17.x86_64'; fi;
### END /etc/grub.d/10_linux ###
代码: 全选
default=0
timeout=5
splashimage=(hd0,8)/boot/grub/splash.xpm.gz
hiddenmenu
###Fedora 17
title Fedora 17 (3.3.6-3.fc17.x86_64)
root (hd0,8)
kernel /boot/vmlinuz-3.3.6-3.fc17.x86_64 root=UUID=7da680b2-c704-4829-a583-d2a970a909cf ro rd.md=0 rd.lvm=0 rd.dm=0 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rd.luks=0 LANG=en_US.UTF-8 rhgb quiet
initrd /boot/initramfs-3.3.6-3.fc17.x86_64.img
直接复制/boot/grub/menu.lst到C:\就行
完整的menu.lst见附件
确保双系统都可以正常启动,就可以用windows安装盘修复MBR去除MBR里的GRUB了。
每次重装windows记得备份C:\boot.ini C:\grldr C:\grldr.mbr C:\menu.lst
每次linux内核升级记得改menu.lst
另外grub4dos也可以引导grub2的,但麻烦很多
用这个办法还有个好处就是方便修改linux启动参数。