1
先安装Win
,再安装Linux
,则在安装完Linux
后会直接进入Linux
系统,进入系统后执行:
#sudo updata-grub
更新grub
,让其找到win
的bootloader
,重启,在grub
界面即可看到进入win
的选项。
2
先安装了Linux
,再安装的win
。此时,硬盘的MBR
里面之前的grub
引导记录被覆盖,需要重新将grub
信息写入MBR
中。由于磁盘中已有Linux
系统,只需将该系统中grub
信息写进MBR
即可。方法如下:制作一个Linux
系统的LiveCD
,普通的U
盘安装启动文件即可,进入到LiveCD
,将当前系统中已有的Linux
系统所在的磁盘挂载至/media/linux
目录下:
#sudo mount /dev/sdaN /media/linux
注意N
为你当前系统中linux
所在的位置。然后执行如下指令:
#sudo grub-install --root-directory=/media/ubuntu /dev/sda
即可将相应GRUB
信息写入当前硬盘的MBR
中。重启,即可进入GRUB
引导界面。
3
原双系统使用GRUB
引导,但是在Win
下格式化了Linux
所在分区,造成启动引导失败。此时由于MBR
中仍然存在GRUB
的相关信息,会进入GRUB RESCUE
界面。由于此时核心文件已经不再分区内,故不能有RESCUE
界面进入Normal
界面。此时可用Win
安装盘修复Win
启动项,直接将Win
启动引导信息写入MBR
,覆盖原有的GRUB
信息。方法如下:找一个Win
安装文件(如U盘安装文件)启动进入修复界面,进入命令行,输入:
>bootrec/fixmbr
重启即可。
4
Grub Rescue
处理方式:rescue
模式下可使用的命令有:set, ls, insmod, root, prefix
;若GRUB
的核心文件在(hd0,8)
分区,则进入normal
模式的步骤如下:
>root=(hd0,8)
>prefix=/boot/grub
>set root=(hd0,8)
>set prefix=(hd0,8)/boot/grub
>insmod normal
>normal
>linux /boot/vmlinuz-xxx-xxx root=/dev/sda8
>initrd /boot/initrd.img-xxx-xxx
>boot
这样就能启动系统了。
参考大神