您的位置:首页 > 运维架构 > Linux

为Grub启动菜单添加Windows选项

2016-08-06 22:57 399 查看
安装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  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux windows