我的电脑有两个物理硬盘。
- sdd 内部 hdd0
- 硬盘 内部硬盘1
BIOS(EFI)允许启动其中任一个。
由于我永远不知道一个硬盘(尤其是固态硬盘)何时会停止工作,因此我更愿意在第二个硬盘上安装备份操作系统。理想情况下,第二个硬盘无需第一个硬盘的任何内容即可启动。(我的意思是,我想使用 BIOS 作为启动管理器,而不涉及 hdd0 上的 grub。)
我希望在两个硬盘上都安装 Debian Wheezy。
我根本不使用Windows。
可能有效的一种方法是物理移除 hdd0,但我宁愿不要物理移除任何硬盘以避免使保修失效。
在 hdd0 上安装 Debian 很简单。它创建了一个 EFI 启动分区、启动分区和根分区。在 hdd1 上安装 Debian 效果不太好。它只创建了一个启动分区,并且没有在 hdd1 上安装 grub 的选项,只能在 hdd0 上安装。
我从 hdd0 启动,在 gparted 中为 /dev/sdb1 设置可启动标志,并使用“sudo grub-install /dev/sdb”(也尝试了 /dev/sdb1),但这并没有使该 hdd 可启动。
长话短说,我怎样才能拥有两个可独立启动的硬盘?
答案1
首先,你必须非常不清楚您是在 BIOS/CSM/传统模式还是在 EFI/UEFI 模式下启动。大多数计算机上也可以混合启动模式,但在大多数情况下会使事情变得非常复杂,因此我强烈建议不要使用混合模式设置。您的描述并不完全清楚,但听起来您正在使用 EFI 模式启动。运行启动信息脚本,将RESULTS.txt
其生成的文件发布到 pastebin 网站,并在此处发布文档的 URL,这样可以澄清问题。
假设您正在进行 EFI 模式启动,我建议您阅读一些资料以了解 EFI 启动过程。我写的两篇文档可能会有所帮助:
- 我的 Linux EFI 模式安装页面是关于 EFI 模式安装的一般教程。它不会直接回答您的问题,但会提供一些基本信息,帮助您了解正在发生的事情。
- 我的 Linux EFI 引导加载程序页面涵盖 Linux 的 EFI 引导加载程序。其基本原则子页面对于建立理解尤其相关。
基本上,你想创建一个单独的EFI 系统分区 (ESP)在每个磁盘上安装启动管理器和/或启动加载程序。考虑到您的需求,我的重新索引可能是个不错的选择,因为它会在启动时构建操作系统列表,因此它会忽略磁盘上任何不可用操作系统的加载程序。不过,您可以使用其他东西,只需忽略您知道不起作用的条目即可。
需要注意的是:EFI 有自己的启动管理器,它们在 NVRAM 中维护一个启动项列表。某些 EFI 会“有帮助地”删除无效的启动项。结果是,您已删除的磁盘的启动项可能会永久消失,需要重新添加它们。在某些情况下,这可能非常烦人。通常的解决方案是将启动管理器置于后备位置(EFI/BOOT/bootx64.efi
在 ESP 上)。大多数 EFI 都会识别这一点并为您提供启动它的选项。
答案2
您可以使用 EasyBCD 来实现这一点,您只需要在 Linux 选项卡下添加新条目,选择 Linux 发行版的引导加载程序,命名您希望引导菜单显示的内容,添加条目,然后就设置好了。不能 100% 保证,因为我从未尝试过使用双 Debian。