双系统Ubuntu下修复启动项的两种方法

时间:2022-01-26 19:03:04

1,先安装Win7,再安装Ubuntu,则在安装完ubuntu后会直接进入Ubuntu系统,进入系统后执行:

#sudo updata-grub
更新grub,让其找到win7的bootloader,重启,在grub界面即可看到进入win7的选项。
2,先安装了Ubuntu,再安装的win7。此时,硬盘的MBR里面之前的grub引导记录被覆盖,需要重新将grub信息写入MBR中。由于磁盘中已有ubuntu系统,只需将该系统中grub信息写进MBR即可。方法如下:制作一个ubuntu系统的LiveCD,普通的U盘安装启动文件即可,进入到LiveCD,将当前系统中已有的Ubuntu系统所在的磁盘挂载至/media/ubuntu目录下:
#sudo mount /dev/sdaN /media/ubuntu
注意N为你当前系统中Ubuntu所在的位置。然后执行如下指令:
#sudo grub-install --root-directory=/media/ubuntu /dev/sda
即可将相应GRUB信息写入当前硬盘的MBR中。重启,即可进入GRUB引导界面。
3,原双系统使用GRUB引导,但是在Win 7下格式化了Ubuntu所在分区,造成启动引导失败。此时由于MBR中仍然存在GRUB的相关信息,会进入GRUB RESCUE界面。由于此时核心文件已经不再分区内,故不能有RESCUE界面进入Normal界面。此时可用Win7安装盘修复Win7启动项,直接将Win7启动引导信息写入MBR,覆盖原有的GRUB信息。方法如下:找一个Win7安装文件(如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
这样就能启动系统了。