必须同时备份uefi启动项和windows注册表启动项:uefi用easyuefi导出为.efi.bak,注册表需分hkcu和hklm导出run键,另备份启动文件夹及计划任务中logon/boot触发器。

备份启动项配置不能只导出注册表 Run 键或靠任务管理器“导出”,UEFI 启动项和 Windows 注册表启动项是两套完全隔离的机制,漏掉任意一个,重装系统后就可能直接进不了双系统、找不到 Linux 启动项,甚至 WinRE 都失效。
UEFI 启动项必须用 EasyUEFI 备份为 .efi.bak 文件
Windows 任务管理器、“启动”选项卡、reg export 或 bcdedit 都看不到 EFI 分区里的真实启动项——比如 \EFI\ubuntu\grubx64.efi 或 \EFI\Microsoft\Boot\bootmgfw.efi。这些项一旦被误删或重装覆盖,系统还原也救不回来。
- 打开 EasyUEFI → 工具 → “设置 UEFI BIOS 启动项” → 选中目标项 → 点击“备份” → 保存为
xxx.efi.bak(这是二进制快照,不是文本) - DiskGenius / 傲梅分区助手也能备份,但仅支持 GPT 磁盘;MBR 磁盘下该功能完全不可见,别试
- 别用
bcdedit /export或 bcdeasy:它们只导出 BCD 存储(Windows Boot Manager 内部菜单),不包含固件层启动顺序和第三方 EFI 应用
注册表启动项要分 HKCU 和 HKLM 两级导出
只导 HKCU\Software\Microsoft\Windows\CurrentVersion\Run 是不够的——很多后台服务、驱动辅助工具、杀软组件走的是 HKLM 路径,且系统级启动项在普通用户权限下根本看不到。
- 当前用户启动项:
reg export "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" user-run.reg /y - 所有用户(含系统服务触发项):
reg export "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" system-run.reg /y -
Get-CimInstance Win32_StartupCommand看起来全,但它漏掉三类关键项:计划任务中设为“登录时运行”的任务、AppInit_DLLs 注入的 Shim DLL、以及%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup下已损坏的快捷方式(只返回路径,不校验有效性)
别漏掉启动文件夹和计划任务这两类隐性启动源
有些软件根本不写注册表,而是往启动文件夹扔快捷方式,或者靠计划任务“在系统启动时运行”。这两类在任务管理器“启动”页里压根不显示,但开机照样拉起进程。
- 当前用户启动文件夹:
shell:startup→ 全选复制备份(路径是%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup) - 所有用户启动文件夹:
shell:common startup→ 需管理员权限访问(路径是C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup) - 计划任务中的启动触发器:
Get-ScheduledTask | Where-Object {$_.Triggers -match "LogOnTrigger|BootTrigger"} | Export-Clixml tasks-boot-trigger.xml
最常被忽略的是:UEFI 启动项备份文件 .efi.bak 必须放在 EFI 分区之外(比如 D:\backup),且不能只存一份——它不带描述、不带时间戳,重命名后容易混淆;而注册表 .reg 文件导出后建议立刻用记事本打开确认内容,因为空键值或权限错误会导致导出为空。











