critical service failed 我这样搞它

2022-01-12 16:29:04 浏览数 (1)

遇到一例,开机进不了系统,报critical service failed ,全网独一份,我自创的方案

步骤总结:

1、修复启动引导发现报intelide.sys丢失或存在错误,chkdsk /f D: (盘符具体化成windows目录所在的那个盘符)检查了没有文件系统异常

2、从正常系统拿文件,放intelide.sys进去又报viaide.sys丢失或存在错误,仔细核对,发现缺失很多驱动程序,于是打包正常系统的drivers目录从win10pe切换到system用户下把正常系统的drivers目录里面所有文件怼过去

https://windows-1251783334.cos.ap-shanghai.myzijiebao.com/drivers.zip

这个包含了正常2012R2 cn系统drivers目录所有驱动文件

3、怼过去后正常重启报critical service failed蓝屏

4、分析memory.dmp和minidump蓝屏文件,信息太少,分析不下去,分析不到根

5、按F8禁用驱动强制签名可以进入系统并且服务正常运行

6、以管理员身份在cmd命令行(非powershell命令行)执行这几句命令使得开机时停在boot分支待选界面,此时从vnc登录按F8选禁用驱动强制签名即可进入系统

bcdedit /set {default} description "Windows Server 2012R2(F8 禁用驱动强制签名)" bcdedit /copy {current} /d "F8 禁用驱动强制签名" bcdedit /timeout 4294967295

只能修到这种地步了,在系统内部设置的禁用驱动程序强制签名的那些组策略配置和bcdedit命令都不管用,这才想了上面的双boot分支等待选择时给个"F8 禁用驱动强制签名"的强提醒的设计

禁用驱动强制签名:

bcdedit.exe /set nointegritychecks on

bcdedit.exe /set testsigning on

bcdedit.exe /set loadoptions DDISABLE_INTEGRITY_CHECKS

保持默认,不禁用驱动强制签名:

bcdedit.exe /set nointegritychecks off

bcdedit.exe /set testsigning off

bcdedit.exe /set loadoptions ENABLE_INTEGRITY_CHECKS

0 人点赞