安装Debian 6.0.5后,Grub启动菜单中没有把原来的Windows系统加到启动选项中,无法启动Windows。启动Windows有两种方法:
在Grub命令行下,手工启动Windows
修改Grub的配置文件grub.cfg,为Windows添加启动菜单
Grub版本:GNU GRUB Version 1.98+20100804-14+squeeze1
手工启动Windows
进入Grub启动菜单后,键入c,进入Grub命令行
1. 用ls命令,查看硬盘和分区信息,找到Windows系统的启动分区
Grub代码
grub> ls -l
2. root命令确定要启动的分区,
Grub代码
grub>root (hd0,msdos1)
3. chainloader命令将控制权将给Windows的boot loader,自己不用管理加载内核等工作
Grub代码
grub>chainloader +1
注意:chainloader要知道的是如何找到Super Block,因而需要设定启动的root分区和所在扇区。命令使用chainloader (hd0,msdos1)+1。如何执行过root (hd0, msdos1),则可简化为chainloader +1。命令参数中的+1,是指定分区上的第一个扇区。
另,chainloader并不负责加载工作,主要用于设置启动Windows等非Linux系统的参数,交给这些系统的boot loader自已启动。因而,如果要启动linux,则不使用chainloader。
4. 启动Windows
Grub代码
grub>boot
为Grub菜单添加Windows 启动项
在grub的配置文件\boot\grub\grub.cfg中添加Windows启动菜单。
1. 设置默认启动的操作系统
Grub.cfg代码
set default="2"
default的值设置,0表示第一次Grub启动菜单项,余下以此类推
2. 设置Grub启动菜单的Timeout时间
Grub.cfg代码
set timeout=30
3. 添加Windows启动菜单
Grub.cfg代码
### BEGIN /etc/grub.d/30_os_prober ###
menuentry 'Windows 7 Ultimate' {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
chainloader +1
}
### END /etc/grub.d/30_os_prober ###
在grub命令行下,也可以查看grub.cfg配置文件
Grub代码
grub>cat (hd0,msdos10)/boot/grub/grub.conf
如果不行,可以搜索如何修复Grub,尝试其他的办法