有人能帮我解决这个问题吗?我在安装 ubuntu 服务器时意外地将 grub 安装在了 usb 闪存驱动器上。现在,如果没有驱动器连接到服务器,我就无法启动系统。
我想使用 grub-install 在硬盘上安装 grub,但我不知道该将引导加载程序的位置设置为哪里?
我的 fstab 如下所示:
file system mount point type
proc /proc proc
/dev/mapper/pdc_jdbeghhjg1 / ext4
/dev/mapper/pdc_jdbeghhjg5 none swap
硬盘分区表如下:
Device Boot Start End Blocks Id System
/dev/sda1 2048 1215662079 607830016 83 Linux
/dev/sda2 1215664126 1249998847 17167361 5 Extended
/dev/sda5 1215664128 1249998847 17167360 82 Linux swap / Solaris
Device Boot Start End Blocks Id System
/dev/sdb1 1 75672 607830016 83 Linux
/dev/sdb2 75672 77809 17167361 5 Extended
/dev/sdb5 75672 77809 17167360 82 Linux swap / Solaris
?
答案1
您需要将引导加载程序放在 sda 和 sdb 硬盘的 MBR(主引导记录)中(以确保在丢失其中一个硬盘时仍可引导)。您可以配置 grub2 以在运行 grub-install 时自动执行此操作。
答案2
您需要通过运行来找到驱动器的设备名称sudo fdisk -l
。
然后您可以做一个sudo grub-install /dev/sda
(或无论您的设备叫什么)。
应该能够毫无问题地安装在两个驱动器上。
答案3
如果您想重新运行安装程序提示,请使用dpkg-reconfigure grub-pc
。将有一个包含 sda、sdb 勾选框的列表(以及其他不推荐的条目)。勾选它们,然后它将安装 grub 到它们。
这些设置将被保存,因此 grub 安装可以在包更新时自动刷新(我猜这是否是一个好主意还有待商榷,但它会使您的系统与非拙劣的安装保持一致:)。