使用DISM部署Windows 10 WIM镜像时如何启用测试模式?
解决Win10部署后测试模式被禁用的问题
我之前在批量部署实验室机器时也遇到过一模一样的问题——bcdboot会自动关闭测试模式,导致未签名驱动触发BSOD。其实bcdboot本身没有直接开启测试模式的参数,但我们可以在部署完成后、重启前,通过修改目标系统的BCD配置来手动开启,完全可以自动化整合到你的现有脚本里。
具体步骤:
1. 给EFI分区分配固定盘符(关键)
在你的Diskpart脚本里,创建EFI分区时一定要给它分配一个固定的临时盘符(比如S:),这样后续修改BCD时不会因为盘符变化找不到路径。示例Diskpart代码:
select disk 0 clean convert gpt create partition efi size=100 format quick fs=fat32 label="EFI_BOOT" assign letter=S # 固定EFI分区盘符 create partition primary format quick fs=ntfs label="WIN10_OS" assign letter=W exit
2. 部署后立即修改BCD开启测试模式
在你执行完bcdboot W:\Windows之后,紧接着运行这条命令——注意要指定目标系统的BCD存储路径,而不是WinPE自己的:
bcdedit /store S:\EFI\Microsoft\Boot\BCD /set {default} testsigning on
命令解析:
/store S:\EFI\Microsoft\Boot\BCD:告诉bcdedit我们要修改的是硬盘上EFI分区里的系统引导配置,不是当前WinPE的/set {default} testsigning on:把默认引导项的测试模式开关打开,这样系统启动后就会允许加载未签名驱动
3. 可选:验证设置是否生效
如果想在脚本里加个验证步骤,确保设置成功,可以运行:
bcdedit /store S:\EFI\Microsoft\Boot\BCD /enum {default}
输出里找到testsigning这一项,值为Yes就说明设置对了。
4. 整合到自动化流程
把这条bcdedit命令直接加到你的部署脚本里,放在bcdboot之后、重启命令之前就行。完整的流程顺序就是:
- Diskpart分区+格式化
- DISM应用Win10镜像
- bcdboot创建引导项
- bcdedit开启测试模式
- 重启进入新系统
这样200台机器部署完成后,都会自动以测试模式启动,你的专有驱动就能正常加载,不会再出现BSOD了。
内容的提问来源于stack exchange,提问作者vadim6385




