我有一块 2TB 的硬盘,上面有 2 个数据分区。我的 Windows 操作系统运行在单独的 SSD 上,我不想在 Linux 安装期间触碰它。现在,我想在那块硬盘上安装几个发行版(只是不知道为什么,我有我的理由)。问题是我有一个 BIOS 设置,因此是 MBR 分区样式。现在,如果我已经安装了 2 个发行版,并且由于 MBR 磁盘的 4 个分区限制而无法创建新发行版,Linux 安装程序(例如 Ubuquity for Ubuntu)会怎么做?它会无法安装还是只能使用一些变通方法(如果存在)?我现在有逻辑和扩展分区类型,但我真的不明白它们是如何工作的,以及在这种分区中运行 Linux 操作系统是否会有所不同。
有人可以详细说明一下吗?
答案1
唯一必须位于主分区上的是引导加载程序 - 其余所有内容都可以驻留在逻辑分区(将数量推高至至少 8 个)或甚至逻辑卷(如果所有发行版都启用了 LVM)上,从而消除了所有合理的数字限制。
因此要明确的是:如果正确处理,Linux 安装程序就不会遇到问题。
答案2
您有多种选择,但哪种选择最好取决于您尚未指定的详细信息:
- 使用逻辑分区-- 最常规的方法是创建一个扩展分区,它可以容纳任意数量的逻辑分区。请参阅Linux 系统管理员指南第 5 章或者这个超级用户问题及其答案有关此主题的更多信息,请参阅。简而言之,MBR 分区方案最多支持四个主分区,其中一个可以是扩展分区,用作任意数量的逻辑分区的占位符。Linux 不关心主/逻辑分区类型,即使出于启动目的,也可以创建任意数量的逻辑分区,以满足您的需要。最常见的警告是,如果磁盘已经有四个主分区,则必须先删除其中一个主分区或将其转换为逻辑形式,然后才能创建逻辑分区。我的程序通常安装在名为或 的
fixparts
软件包中,可以进行转换。请参阅gdisk
gptfdisk
FixParts 官方文档了解详情。还有放置问题——您不能在逻辑分区之间设置主分区。最后,标准 Windows 分区工具对使用逻辑分区的任何磁盘来说都是一个威胁,尽管操作系统本身可以很好地处理它们。因此,如果您使用逻辑分区,您必须小心不要使用标准 Windows 分区工具。 - 使用 LVM—— 这种方法与前面的方法类似,但从本次讨论的角度来看,它具有更多的局限性。逻辑卷管理 (LVM)是一种利用一个或多个分区或原始磁盘设备(均称为物理卷用 LVM 的话说)并将其分成逻辑卷,其工作原理与分区非常相似。因此,您可以将磁盘上的一个分区留作 LVM 物理卷,并根据需要创建任意数量的逻辑卷。与逻辑分区相比,最大的限制是从逻辑卷启动可能更困难。虽然 GRUB 理论上可以从存储在逻辑卷中的内核启动,但大多数发行版
/boot
在使用 LVM 时都喜欢看到单独的分区。此外,大多数非 Linux 操作系统无法读取 Linux LVM,因此这不是共享数据空间的好解决方案。另一方面,LVM 比常规分区灵活得多,因此如果您定期添加、删除或调整存储大小,使用 LVM 是一个很大的优势。请注意,您可以将逻辑分区用作物理卷,因此此解决方案与前一个解决方案并不互斥。 - 转换为 GPT-- 如果 Windows 无法从硬盘启动,您可以将其从 MBR 转换为使用 GUID 分区表 (GPT)。GPT 不区分主分区、扩展分区和逻辑分区,默认情况下最多支持 128 个分区。(如有必要,您可以提高该限制。)即使在 BIOS 模式下,Linux 也可以从 GPT 磁盘正常启动,但需要注意的是,一些 BIOS 会在 GPT 磁盘上阻塞。如果您的计算机足够新,可以安装 EFI 固件,那么 GPT 也是默认设置。(自 2011 年底以来推出的大多数计算机都具有此类固件。)因此,如果您的计算机是新的,您可以转换为 GPT 并以 EFI 模式启动,大的需要注意的是,你需要将 Windows 转换为以 EFI 模式启动(使用这个Windows工具) 或处理在 EFI 模式下启动 Linux 而在 BIOS 模式下启动 Windows(这很尴尬)。Vista SP1 之前的 Windows 和一些较旧的操作系统根本无法处理 GPT,并且没有哪个版本的 Windows 可以在不经过黑客攻击的情况下从 BIOS 模式下的 GPT 启动(尽管 Windows 要求在 EFI 模式下安装 GPT)。因此,如果您不需要在 BIOS 模式下从磁盘启动 Windows 或从较旧的操作系统访问磁盘,则使用 GPT 是一个不错的选择;但如果您需要在 BIOS 模式下启动 Windows,那么这根本不是一个选择。使用 GPT 与使用逻辑分区是互斥的,但您可以在 GPT 分区上使用 LVM,因此如果您愿意,可以结合这两种方法。我的GPT fdisk 文档更详细地介绍了 GPT 问题,包括如何将现有磁盘从 MBR 转换为 GPT。
您提供的细节还不够多,让我无法知道哪个选项最适合您。根据您提供的信息,最安全的方法可能是使用逻辑分区。根据您安装的发行版,您可能需要在开始之前设置扩展分区,或者安装程序可能会帮助您完成此操作。使用 GPT 可能会产生足够多的后续问题,因此不值得这样做,但我对此不敢肯定。特别是如果您有一台相对较新的计算机,使用 GPT 并以 EFI 模式启动可能会带来一些优势,因此如果您愿意重新安装 Windows 或冒险转换其启动模式,可能值得考虑。不过,我猜您最好坚持使用 MBR 并使用逻辑分区。
如果您要使用多个发行版,尤其是如果您希望将来更改组合,我建议使用 LVM,可能与逻辑分区或转换为 GPT 结合使用。我喜欢设置几个 500-1000MB 的分区作为/boot
分区使用,然后将其余的 Linux 空间留在一个或多个 LVM 分区中。(设置多个 LVM 分区使得将来在需要时将部分 LVM 空间重新分配给非 Linux 使用变得相对容易。)另一方面,LVM 具有中等学习曲线,因此如果您刚刚开始,它可能不是一个好的选择。再说一次,一些发行版(如 Fedora)默认使用 LVM,因此即使您不打算使用它,您最终也可能会使用它。此外,启动多个 Linux 发行版有一个很大的学习曲线。
最后一点提出了另一种可能性:除了多启动,您可能还想考虑使用虚拟化,如 VirtualBox 或 VMware。您可以在主操作系统中设置任意数量的虚拟机。这使您可以并行运行它们,这意味着您不需要处理多启动问题。这种方法有缺点,特别是如果您需要在所有操作系统中直接访问底层硬件,但它很多比尝试多重启动六个或更多的操作系统更容易。