如果没有,是否可以在转换之前将启动信息保存在某处并在回滚时恢复?
答案1
简短答案
总的来说,如果你想要帮助实际的如果需要,你应该详细说明你试图实现的目标以及实现目标的原因。如果你只是对理论感兴趣,那么你提供的详细程度的答案是“视情况而定”。
长答案
细节很重要。例如:
- Windows 不喜欢安装在逻辑分区上,因此将 Windows 安装从主分区转换为逻辑分区将导致其无法启动。(我知道有办法解决这个限制,但据我所知,它们都涉及较小的主分区或更复杂的卷积。这些可能很难撤消。)
- 在某些情况下,将分区从主分区转换为逻辑分区或反之亦然,可以以简单的方式完成;但在其他情况下,它还需要调整分区大小、移动分区或转换其他分区。我的修复零件工具可以进行转换,但不能进行任何先决条件的移动或调整大小;它将不是保证之后可以启动操作系统。其他一些 Windows 工具可以进行类似的转换,但我不知道它们可以处理多少任务的细节。
- 可能存在特定于操作系统的怪癖。Linux 往往不太关心主分区和逻辑分区的状态。我对一些不太知名的操作系统(FreeBSD、OS/2、BeOS 等)的记忆正在逐渐淡忘,因为我已经很久没有使用它们了,但我记得 DOS 和 Windows 一样有局限性。
- 根据操作系统和引导加载程序,您可能需要在一次或两次转换后重新安装引导加载程序。
- 低级全盘备份是一种非常简单的方法,可确保您可以恢复到起点;但是,这样的备份可能会占用备份介质上的大量空间。
在 BIOS 世界中,“启动信息”存储在各种位置,例如:
- 主引导记录 (MBR;磁盘的第一个扇区)
- MBR 后面紧接着的扇区
- 分区引导记录 (PBR;操作系统引导分区的第一个扇区)
- BIOS 启动分区(仅在 GPT 磁盘上,因此与您的问题无关,但为了完整性我还是记下来了)
- 各个分区中的文件。
BIOS 模式启动越来越不重要,因为自 2011 年底以来销售的大多数计算机都使用 EFI,而不是 BIOS,而 EFI 的启动方式完全不同。不过,您的问题提到了主分区和逻辑分区,这意味着计算机很可能以 BIOS 模式启动。但如果以 EFI 模式启动,则可能会使用 GPT,而 GPT 没有主/扩展/逻辑分区的区别。在 GPT 下,引导加载程序作为文件存储在EFI 系统分区 (ESP),而不是分散在 MBR、PBR 等中。如果计算机从 MBR 磁盘以 EFI 模式启动,它可能不太关心主分区与逻辑分区的状态,但如果你将 ESP 从主分区转换为逻辑分区或反之亦然,那么可能使 EFI 混乱到系统无法启动。这是我从未尝试过的事情 —— 即使我尝试过,结果也可能因 EFI 而异,所以我不愿意对此进行概括。
一些引导加载程序依赖于分区详细信息,例如分区编号、主/逻辑状态以及分区上是否存在“引导标志”(也称为“活动标志”)。详细信息因操作系统和引导加载程序而异。本段的重点是,备份“引导信息”取决于了解所涉及的操作系统的详细信息、分区布局,也许还有正在使用的引导加载程序等。