我想在第二个硬盘上安装操作系统(Ubuntu 12.04),但我无法访问 BIOS,所以我必须在第一个硬盘上安装 Grub。如何在第一个硬盘上安装 Grub,并让 Grub 从第二个硬盘引导操作系统?
到目前为止,这是我尝试过的。我在第二个硬盘上安装了 Ubuntu,它有一个 /boot 分区和一个根分区。它没有启动,因为引导加载程序在第二个硬盘上,但系统坚持从第一个硬盘启动。
然后我从救援系统启动,chroot 到我的第二个硬盘的根分区,将第二个硬盘的引导分区挂载到 /boot,然后运行grub-install /dev/sda
. grub-install
拒绝运行,因为它在第一个硬盘上找不到任何分区(它没有)。所以我在第一个硬盘上创建了一个引导分区,并将第二个硬盘的引导分区的内容复制到那里。这次grub-install
成功了。系统启动。但是即使系统从第一个硬盘的启动分区启动,一旦启动它就会挂载第二个硬盘的启动分区。这对内核升级不利,所以我编辑了 /etc/fstab,将 /boot 的设备更改为 /dev/sda,运行update-grab && grub-install /dev/sda
并重新启动。这次它似乎也起作用了,只是 grub 的超时消失了。由于这是我倾向于远程访问的服务器,grub 不会自动启动是有问题的。grub.cfg 包含超时选项,但超时实际上不起作用,让我认为我可能没有正确安装 grub。
第一个磁盘可能需要分区表,但不需要
/boot
。即使是 MBR 代码也应该能够访问第二个磁盘。您应该擦除/boot
第一个磁盘上的内容,装入/boot
第二个磁盘并grub-install
再次运行。如果这不起作用,请发布 的输出
grub-install
。也许你混淆了两者
grub.cfg
?还要检查的内容(磁盘编号)
/etc/grub.conf
。