我对 EFI 分区信息如何位于 Windows 恢复媒体(例如,在 DVD iso 文件中)感到困惑。
例如,我的 Windows 10 笔记本电脑硬盘有 3 个分区:EFI、MSR 和 Windows。因此,如果我的 HDD 死机并且我购买了替换的空白 HDD,我的 iso 文件需要包含此 EFI 信息。准确地说,EFI 信息必须存在以“帮助”主板执行第一个“从 DVD 恢复启动”,并且必须存在然后传输到新 HDD 的第一个分区(用于后续的“帮助”穿着普通靴子)。正确的?我很可能从一开始就错了,但会假设这是真的。
(在我的情况下,iso 文件的大部分是“install.esd”子文件 - 这是我的 EFI 分区所在的位置吗?其他所有子文件看起来都太小了。)
现在我真正的问题:
当 HDD 具有已经运行的操作系统时,当我执行“从 DVD 恢复启动”时会发生什么 - 如果我选择安装到一个空分区,保留旧操作系统进行双启动,那么所有 EFI 数据都在DVD 被忽略(因为 HDD 已经有一个 EFI 数据分区)?
当我安装(即覆盖)旧操作系统时会发生什么 - EFI 分区是保留还是被替换?
EFI 分区实际上没有太多关键信息。它是一个常规的 FAT32 分区,其中包含一个小程序(Windows 启动管理器)及其配置文件。它实际上并不处理固件本身已经可以完成的事情(例如检测 DVD);它的工作只是告诉固件如何专门启动一个或其他操作系统。
您是正确的,所有内容都作为 Install.wim(或 .esd)映像的一部分进行安装。但是,它不是以预制“EFI 分区”的形式出现的——它以 C:\Windows 下的常规文件的形式出现。
整个 Install.wim 映像解压缩到您的操作系统分区,生成诸如 C:\Windows 和 C:\ProgramData 之类的目录。
包含 Windows 启动管理器的文件从 C:\Windows\Boot\EFI 复制到 EFI 系统分区中的所需位置(通常在 \EFI\Microsoft 下)。
生成“BCD”配置文件,告诉 Windows 启动管理器在哪里可以找到主 OS 分区。
一个启动菜单条目被添加到固件的 NVRAM 中,告诉它哪个文件 (Bootmgfw.efi) 是 Windows 启动管理器。
你可以自己做所有这些;步骤 1 可以使用命令完成
dism
,步骤 2-4 可以使用bcdboot
命令完成,这两个命令都是 Windows 自带的。(事实上,这就是 Windows 安装的全部内容。)其他操作系统的工作方式类似。(例如,要在 Linux 上安装 systemd-boot,您只需将程序文件 /usr/lib/systemd/boot/efi/systemd-bootx64.efi 复制到 EFI 系统分区并创建一个指向任何 Linux 内核的文本文件你想启动...)
是的,但是在从 DVD 引导期间,您只使用DVD本身上的 EFI 文件。
不,用于引导 DVD 的 EFI 文件完全独立于用于引导最终操作系统的文件。它们不会被复制;而是使用操作系统安装映像中的文件。
引导加载程序是特定于操作系统的,因此每个操作系统几乎总是需要安装自己的副本。
通常它会留下来;安装程序将错误地保留可能无用的引导条目,而不是删除可能需要的引导条目。