观前提示,废话偏多,仅做记录之用。
最近在升级黑苹果MacOS Sequoia,升级完EFI文件打开DiskGenius发现软件提示我的ESP分区故障,我也就随便复制了其中的文件,重新格式化下ESP分区,因为按照我一般的错误,这样基本就不会再报错了。如法炮制,成功启动黑苹果,然后黑苹果卡住了,鼠标转圈,然后电脑就自动重启了。这时候也就以为是oc没配置好,仅主系统(win11)看下oc文件啥问题;我还在怀疑是不是前面报的那个故障错误损坏了我的oc文件结构和kext,因为此时OCAT已经不认这个OC文件结构了,即无法升级这个efi版本且无法识别所有kext版本信息。我又重新构建了一份新的,发现现在OCAT能识别了,看来果然是故障导致了文件的损坏。配置完重启准备通过OC引导黑果子试下,恐怖的事情发生了,我这块爱国者p7000D掉盘了!主板识别不到这块硬盘盘了,吓得我赶紧进入pe系统(此时已经是关机再开机了),这次从bios界面就能发现主板又认这块固态了;更恐怖的是,主系统启动就蓝屏,自动修复啥的卵用没有,完犊子,我好多资料还在里面,我最担心的就是固态主控挂了,毕竟这个方案英韧+长江颗粒,这个主控有很多翻车的案例(后者国产之光,矿老板认证,问题不大)。赶紧进备用系统(win11版本同主系统用,本人超频使用),能启动,两个系统在同一张硬盘上,所以主控挂了暂时排除,同时读了这块硬盘上其他的分区的文件,都能正常读取,文件应该没啥大问题。现在就回过头来解决主系统蓝屏的问题,此时还抱有侥幸心理,以为可能是原来的ESP故障导致引导坏了所以启动蓝屏,那换个别的ESP分区试下,照样蓝屏,现在问题就很严峻了,搞不好系统就寄了,数据倒是丢不了,问题是重装各种软件真是很蛋疼。
一开机就蓝屏报错0xc0000001,界面大概如下图(我急得不行没拍,借一个图),注意不同于一般的这四个选项,我的界面只有三个选项,根本无法进入恢复环境。
在某度和B站搜这个错误代码,有效信息很少,图片源这个视频还算是有些用处的,但是和我这个故障不太一样,什么F8进入别的启动模式、开机按F8(貌似是)巴拉巴拉怎么样都不管用。试试Enter重试,照样是没法启动接着蓝屏,但是这次启动有新线索,蓝屏界面偶尔变成花屏,显示错误信息,还是担心EFI错误,我又重新再pe里构建了几次启动项。别说,虽说照样没法启动,但是有了新线索,偶尔会出现蓝屏界面报错误信息“Bad_system_config_info”,搜索下这个错误,对他的描述大多是注册表问题,当时也没当回事。我寻思貌似win有提示,能通过安装介质(系统镜像)进行系统修复,那就先在备用系统试一下标准修复命令,看能否通过正常系统修复损坏系统,命令无外乎 /sfc /scannow、dism ****(这个不是标准命令,不要用)。结果是dism相关命令秒报错(后面解释原因),sfc命令报“Windows资源保护无法执行请求的操作”。看dism的日志也看不出啥问题,提示dism不认为我选择的分区是一个Windows分区,我寻思sfc这个可能是在一个win系统中存在权限等问题,那就进入pe试下,pe压根没法执行/sfc相关命令。此时我能想到的就一招了:既然我的系统界面没有修复选项,那就只能做一个安装环境从win原生的安装环境尝试能否修复,这个好说用Rufus做个安装盘,启动,进去选完语言后的第二个界面就能选择修复选项了。按部就班按照下面这个视频来操作
但是还是没用 ,报的错误和我在备用系统中的一样,我特意查看了修复介质界面dism的错误日志,还是和以前一样。这时候可以说已经是没招了,系统上午崩溃的,一直忙到晚上12点眼都花了。此时已经开始着手备份所有数据,准备硬盘送修,再重装系统,我还把系统用DiskGenius复制了一份,按照上面的操作再来一遍,以排除固态硬件问题,问题照旧。
第二天,数据断舍离了一上午,好多游戏都删完了,但是不太甘心,想要再挣扎下,突然想起来有个软件叫DISM++(神器啊很好用),下下来试试,此时出现了一个问题:软件识别的到系统,但是打不开(示意图,原图没保存,能识别的系统会依次展示出来1、2...n,如Dism++ 1图);但是当你尝试打开的时候(如Dism++ 2图所示)打开会话,会报错误,大概意思是这不是一个Windows结构。结合前面使用dism命令修复报的错误,思路突然明晰了起来,很可能就是Windows系统结构损坏了,而且极有可能是注册表相关的问题!这时候要是去系统学习Windows系统的结构可太难了,而且没有相关易得的资源,在B站考古没啥收获。
在翻看损坏系统盘的目录时候发现蓝屏日志文件夹下有新的日志,就是这几次启动产生的,如下图:
直接看是有点困难,这时你需要从微软商店下载一个WinDbg:
然后打开这个错误日志,如下图,注意要是直接打开本机的dmp文件大概率打不开,此时可以考虑把这个文件拷贝出来,换个地方打开看看;另外打开了不要着急等着下面的进度条跑完,直到出现红框中的蓝色字块“!analyze -v”,点击他,他会开始自动分析,看得懂就大概知道是啥导致的蓝屏,看不懂可以整段复制喂给GPT:
我的错误日志提示是SECURITY注册表有问题,导致的蓝屏。这时候突然想起来昨天在搜索错误“Bad_system_config_info”的时候搜到一个视频(是个大佬啊),讲的就是注册表损坏的解决办法,如下
但是我的问题和他的还是有区别,但是他的还是可以进入修复界面,我这直接没有这个选项。里面讲了校验注册表是否损坏的测试命令,非常实用,接个图(图片来自大佬视频)
命令是“reg1oad hklm\1 xxx”(不要引号,其中xxx是注册表的文件名),具体请看大佬视频,当然一个一个来非常麻烦,这里使用命令直接便利所有注册表“for /f %i in ('dir /a:-d-h /b') do echo %i && reg Load HKLM\a %i & reg unLoad HKLM\a”(不要开头和结束的引号),没显示成功那这个注册表大概率就是寄了。如大佬在评论区所说“bbi、userdiff、vsmidk这些损坏不用管,重要的注册表是:COMPONENTS、default、SAM、SECURITY、SOFTWARE、SYSTEM这些。”
我扫描了下我的,发现我的SECURITY和VSMIDK这来损坏了,又翻了下发现备用系统中,这个SECURITY大小和损坏的一样大,结合这个图,有人评论SECURITY可套用(大佬说不行,实测貌似确实不行),死马当活马医,把备用系统的文件替换进去,你别说,不蓝屏了,但是黑屏,没法启动,直接重启了,这无疑是一个极好的现象,说明可能真的就是注册表损坏了。
那如何修复注册表文件,也没搜到相关方法,大佬倒是有一期视频讲如何修复SECURITY文件,但是要充电才能看(囊中羞涩。。)。浏览了评论区,有个哥们一句看起来非常可行,如图:
一看有人通过这个办法成功修复了注册表,那就赶紧端上来罢,我的代码如下:
随便装个python环境一跑,把得到的文件复制到损坏的系统中,芜湖,正常启动!!!问题解决。最后建议大家养成备份系统的好习惯,以及远离辣鸡固态,还得是原厂的固态稳一些,做系统盘放心。
再啰嗦一下备份系统的方法,注意仅备份系统盘的文件,使用Dism++,选择系统备份,按照图片系统备份2依次进行操作(③部分越向下压缩率越高,速度慢但是占用空间小)。另外,建议卸载WPS进行备份,因为它容易出现一个句柄错误的报错导致备份失败(因为WPS云盘的某个目录问题,也可以在软件中设置例外避免报错)。
至于恢复系统,更简单,但是建议在pe中恢复,因为在一般系统中极有可能出现恢复到“Windows\System32\config\systemprofile\AppData\Local\AMD\DxcCache”这个貌似是amd预编译的着色器文件卡住报错导致恢复失败,删了也无所谓,有需要系统会重新编译,pe就没有这个问题。按照这个顺序依次进行,③是备份文件,④是恢复路径,建议格式化完成后直接选根目录。没有引导可以手动修复一下。
Vernalkong 2023-04-13