移动启动分区

Thr*_*iag 6 partitioning boot dual-boot

我现在的情况是:

民主分区

正如您所看到的,我想要恢复启动分区左侧有一个 500mb 的块。

我想要的最终设置是:

最终情况

我将 22GB 留给我的 linux 根分区,因为我可能想使用一些额外的空间来安装不同的发行版。

问题是:如果我移动启动分区,我会收到警告,告诉我这可能会使系统无法启动。有没有一种方法或更好的顺序来执行分区的这项工作,以便最大限度地减少重新启动的风险?我应该先移动大分区和根分区,然后再移动启动分区吗?或相反亦然?或者其他方式?

Rod*_*ith 5

首先,任何分区操作都至少有一点风险。您应该始终有备份和恢复计划,以防数据丢失或无法启动。

在 BIOS 领域,移动分区可能会导致其无法启动,因为许多启动加载程序依赖绝对扇区值来定位自身更复杂的部分。如果该扇区位于移动的分区中,则引用不太可能被更新,并且引导将失败。不过,不同引导加载程序的细节有所不同,这使得预测移动分区的结果变得困难。就您而言,您没有使用 BIOS,这意味着 BIOS 规则不适用。不幸的是,有一个几乎同样有害的 EFI 问题:在 EFI 下,引导加载程序信息存储在 NVRAM 中。这些条目通过使用各种类型的信息(包括文件名、分区 GUID、分区号和磁盘硬件识别码)指向引导加载程序。当您移动分区时,大多数这些内容不会改变,但其分区号可能会改变。

您可以通过多种方式保护自己免受这种可能性的影响。最简单的可能是在当前的/dev/sda2. 这样,如果 GParted(或其他一些工具)决定按升序对分区进行编号,则当前的分区/dev/sda2将保留/dev/sda2(或 EFI 的等效项)。您可以做的另一件事是使用gdiskt专家菜单上的选项)的转置功能来交换分区号,如果您的当前/dev/sda2变为/dev/sda1. (请注意,您可以将现有分区号替换为空分区号,因此即使最终没有分区号,这也可以工作/dev/sda2。)但是,无论哪种情况,您都应该积极主动 - 某些 EFI 会完全删除无效的引导条目,因此,如果您的分区号发生变化并且您尝试启动,这些条目可能会丢失,您必须重新创建它们。在重新启动之前检查您的分区号,如果您的 ESP 不再是/dev/sda2,请立即采取行动。

就我个人而言,我认为计划恢复引导加载程序会更容易(也更干净)。您现在可能已经安装了 GRUB,因此您可以使用引导修复,它通常可以很好地恢复 GRUB 设置。如果您安装另外几个操作系统,引导修复可能会或可能不会做得那么好 - 但是,如果您安装另一个操作系统,它将安装自己的引导加载程序/管理器,这可能会满足您的需要。(如果它没有满足您的需要,您将必须采取行动来修复它,因为新操作系统几乎肯定会将其引导加载程序设置为默认引导加载程序。)另一种选择和通常有用的备份是安装我的rEFInd在 USB 闪存驱动器上。它可以帮助在紧急情况下启动,因为它比大多数启动加载程序更少依赖配置文件。如果 GRUB 设置因操作系统过多而变得混乱,rEFInd 作为常规引导管理器也可能会做得更好——但这既是个人喜好的问题,也是在特定情况下效果最好的问题。