linux下重新安装grub

介绍

本篇指南会告诉你如果不知什么缘故丢失了GRUB后如何用一张Arch安装光盘重装GRUB。

注意

  • 在这篇指南,我将使用sda1作为我的根udev类型references。如果你使用0.7.1以前的安装光盘,你应该将udev references换成devfs references。如果不明白请参见Technical_Terms#Hard_Drives
  • 同时,请注意本指南面对的是使用IDE驱动器而不是SCSI或者SATA驱动器的用户,所以如果你要在非IDE硬件上尝试,请将适当的地方替换为SCSI和SATA的名称。

启动安装光盘

首先你需要一张安装光盘。任何一种安装光盘都可以,当然,使用最新的光盘会比旧的要容易。

象平常安装一样启动光盘((不要使用root= option)然后进入下个步骤。

挂载你当前的安装

现在,你需要挂载你当前的已安装系统。一般操作过程如下:

  • 注意: 你必须清楚哪个是恰当的分区和文件系统。这个例子理我将使用sda1作为根分区,ext3作为文件系统;你可以根据你的个人设置进行改变。
cd /
mount -t ext3   /dev/sda1 /mnt          #如果你使用pre-0.7.1 CD,sda1就是/dev/discs/disc0/part1
mount -t proc   proc      /mnt/proc
mount -t sysfs  sys       /mnt/sys
mount -o bind   /dev      /mnt/dev
 
chroot /mnt /bin/bash

现在你已经以root身份登录入你当前的已安装系统,就象你刚启动登录一样。继续下个步骤!

重装GRUB

编辑/boot/grub/menu.lst确定一切都正常。一旦你完全确定menu.lst 是正确的,运行以下命令:

grub-install /dev/sda

如果你做足之前的步骤,这条命令应该可以成功执行。(如果不行,留言之前的注意事项)就这样了,搞定!退出chroot然后重启:

cd /
umount -a
exit
cd /
umount -a
reboot

错误

如果你遇到一个错误说The file /boot/grub/stage1 not read correctly,有可能表示你的fstab/mtab由于某些原因不正确,需要修正。这两个文件分别是/etc/mtab/etc/fstab。编辑他们,确认它们指向正确的分区,然后重新运行grub-install。

如果你遇到一个错误说sed: can't read /boot/grub/device.map: No such file or directory,这表示你需要使用带--recheck参数的grub-install。

 grub-install --recheck /dev/sda

希望这能涵盖所有你可能碰到的情况。如果你遇到其它错误,重启动然后重新一步步再执行上面的步骤。

希望这篇指南对你有所帮助! — Shadowhand

posted @ 2014-05-23 13:47  招谁惹谁  阅读(3099)  评论(0编辑  收藏  举报