200台机子装完补丁重启蓝屏,我翻BIOS日志才揪出这个老毛病
上周四凌晨推月度补丁,200多台办公机按批次重启,早上八点陆陆续续接到报障,说开机进不了系统,蓝屏代码倒是没变,还是那个 0x0000007B。我心里咯噔一下,这个代码多半跟磁盘控制器驱动或者存储模式有关系,可这批机子半年前刚统一过驱动,按理说不该出这档子事。
先按老规矩,不慌着大面积回退。我调了台账,昨晚推的这批一共37台,报障集中在其中11台,都是2016年前后的那批老联想,主板芯片组是H110那一代。剩下的26台同批次同补丁,跑得好好的。这里面就有说法了——补丁本身大概率没问题,问题出在机子个体的差异上。
我把一台报障机拆出来,进PE看系统日志,发现补丁安装记录里有个存储控制器驱动的更新,装完之后注册表里 Start 值被改成了0,意思是从按需加载变成了开机必须加载。可这台老机子的AHCI驱动版本偏旧,跟新补丁带的那个驱动签名对不上,开机一加载就崩。
光看日志还不够,我又进了BIOS对比。11台报障的机子,BIOS里SATA模式全是IDE兼容模式,那26台正常的是AHCI。原来这批老机当年装机时为了图省事,全设的IDE,后来一直没人动过。补丁默认按AHCI逻辑去加载驱动,IDE模式下自然认不到盘。
找到根因就好办了。我做了一个小批量的修复脚本,PE下把注册表里那个 Start 值改回3,再把IDE模式的机子标记出来,后续补丁推之前先跳过驱动更新这一项。先拿那11台机子跑一遍,全部正常进系统,数据一个没丢。
第二天我把这个处理办法整理成一张表,贴到运维群里,顺手把200台的BIOS SATA模式全查了一遍,结果IDE模式的还有43台,都是同批老机。这43台我统一列进了补丁排除清单,等后面抽时间统一改成AHCI再说,改之前必须先备份数据,这个不能省。
说句实在话,这次能这么快定位,靠的还是台账和回退机制。每台机子补丁前的状态我都留了快照,真不行直接回滚,不至于干等着。软领优化大师那边我也在用,它的还原点功能在这类批量操作里确实省心,推之前打一个,出问题一键回去,比一台台手动恢复强太多。
不过有件事我还没想透:这批IDE模式的老机子,是趁早统一改成AHCI一劳永逸,还是就这么维持现状、以后补丁里绕开驱动项?改的话有一定风险,不改的话隐患一直留着。你们那边遇到这种老机子的存储模式问题,一般都怎么处理的?
