由于在rescue模式下,只有少量的基本命令可用,必须通过一定的操作才能加载正常模块,然后进入正常模式。
rescue模式下可使用的命令有:set,ls,insmod,root,prefix(设置启动路径)
先假设grub的核心文件在(hd0,8)分区,再来看看怎样从rescue模式进入从 (hd0,8)启动的正常模式(normal)。
在rescue模式下不清楚grub文件处于哪个分区的,可以用ls命令查看,比如
ls (hd0,8)/ 查看(hd0,8)分区根目录,看看有没有boot文件夹
ls (hd0,8)/boot/ 查看(hd0,8)分区的/boot目录下文件
ls (hd0,8)/boot/grub/ 查看(hd0,8)分区/boot/grub目录下文件
通过文件查看,可以确定grub核心文件处于哪个分区,接下来就可以进行从rescue到 normal的转变动作:
先 ls 看看分区,根据分区列表,猜下 / 分区的编号再 ls (hd0,x)/ 看分区目录下文件确定找到 / 分区,不对的话继续找。找到 / 分区的 (hd0,x) 继续
grub rescue>root=(hd0,x)
grub rescue>prefix=/boot/grub
grub rescue>set root=(hd0,x)
grub rescue>set prefix=(hd0,x)/boot/grub
grub rescue>insmod normal
grub rescue>normal
然后就可以进入正常的引导画面,可以进入系统,但每次重启后都还是grub rescue 的界面,因此 需要 执行 以下命令 把grub 写入 mbr。
grub-install /dev/sda 写到了sda的mbr里;