grub2修复

10 篇文章 0 订阅

GRUB2修复


 

1、用有grub启动的光盘或U盘修复:

用工具盘启动,在grub菜单上按c进入命令行状态

在grub>提示符下输入

grub>find /boot/grub/core.img (有/boot分区的用find /grub/core.img)

系统会显示(hdx,y) (查找到的分区号),然后输入

grub>root (hdx,y)

grub>kernel /boot/grub/core.img (/boot分区的用 kernel /grub/core.img)

grub>boot

执行boot后能转入grub2菜单,重启ubuntu后,再在ubuntu终端下执行

$sudo grub-install /dev/sda

(或sdb,sdc等,根据第几硬盘而定)修复grub

注意:如果ubuntu的启动分区使用ext4格式,要有支持ext4格式的grub才能修复

2、使用liveCD修复grub

用ubuntu9.10的liveCD试用ubuntu启动后,打开终端

假如你的ubuntu的 / 分区是sda9,又假如 /boot分区是 sda6,在终端下输入

$sudo -i

$mount /dev/sda7 /mnt

$mount /dev/sda6 /mnt/boot (如果没 /boot 单独分区这步跳过)

$grub-install --root-directory=/mnt/ /dev/sda

和前面一样,要装入第二硬盘的把sda改为sdb

修复后无法引导windows,可以用下面的方法解决:

进入ubuntu系统,打开终端,重建grub列表

$sudo update-grub

重新写入第一分区mbr

$sudo grub-install /dev/sda

如果想修改启动顺序,可以修改/boot/grub目录下的grub.cfg文件

注意此文件不可写的,先执行一下命令

$sudo chmod +w /boot/grub/grub.cfg

然后再执行

$sudo gedit /boot/grub/grub.cfg

修改,类似于grub1的menu.lst修改

Grub rescue模式

rescue模式下可使用的命令有:set,ls,insmod,root,prefix(设置启动路径)

ls --列出分区

ls (hd0,8)/ --查看(hd0,8)分区根目录

找到grub目录,然后继续

grub rescue>root=(hd0,x)

grub rescue>prefix=/boot/grub --(grub的目录)

grub rescue>set root=(hd0,x)

grub rescue>set prefix=(hd0,x)/boot/grub

grub rescue>insmod normal

grub>normal --------若出现启动菜单,按c进入命令行模式

grub>linux /boot/vmlinuz root=/dev/sdax

grub>initrd /boot/initrd.img

grub>boot

完成



进入系统后,更新GRUB或重装GRUB:

更新:sudo update-grub

重装:sudo grub-install /dev/xxx (这儿的xxx是sda或者sdb)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值