新闻、帮助、产品更新动态

最新的业界新闻,产品系统更新开发动态,帮助教程和活动发布

Windows系统关键目录的文件有缺失或存在异常或出

发布日:2022-06-08 14:21       阅读数:

Windows系统关键目录很多,这些目录文件有缺失或存在异常或出现新文件可能导致严重后果,下面举几种常见例子,后续遇到了新case会再增补。
1、drivers目录,C:\Windows\System32\drivers
该目录存放系统驱动文件,一般按时间倒序排列能看到最新引入的驱动文件(有些新安装的软件集成的驱动比较旧也可能出问题),可用process explorer定位,最好找到引入驱动的软件官网查询去除驱动的办法,贸然直接干掉驱动可能导致系统异常,参考这个case:https://cloud.tencent.com/developer/article/1957099
驱动兼容性不好的话,可能导致蓝屏宕机、死机、远程或vnc无响应、内存泄漏等,例如内存泄漏的case:https://cloud.tencent.com/developer/article/1948812
2、CatRoot目录,C:\Windows\System32\CatRoot
误删除了C:\Windows\System32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} 导致系统异常,报错critical service failed,错误码0xC000021A,并且F8所有分支包括3种安全模式(安全模式、网络安全模式、命令行安全模式)都进不去系统,报错信息都一样。
解决办法:拷贝系统差异很接近的正常系统的文件,在winpe下替换到原位置,重启机器后顺利进入系统
3、CatRoot2目录,C:\Windows\System32\CatRoot2
CatRoot、CatRoot2跟windows update有关系,这2个目录尽可能不要动CatRoot,这2个目录有异常,最直接影响的就是update,严重的话进不去系统。如果update有异常,可以逐条尝试如下命令
net stop msiserve
net stop cryptsvc
net stop BITS
net stop WUAUSERV
Ren c:\windows\SoftwareDistribution SoftwareDistribution.bak
Ren c:\windows\system32\catroot2 catroot2.bak
net start msiserve
net start cryptsvc
net start BITS
net start WUAUSERV
4、assembly目录,C:\Windows\assembly
该目录数据确实,会导致.msc命令执行报错,参考https://cloud.tencent.com/developer/article/1936608
解决办法:从正常系统拷贝,在winpe下替换
5、C:\Windows\System32\*.dll
C:\Windows\System32\ 目录的一些.dll动态库文件、C:\Windows\System32\drivers\ 目录的一些.sys驱动文件,可能导致进不去系统。
遇到过一个case,https://cloud.tencent.com/developer/article/1871412
解决方案:从正常系统拷贝,在winpe下替换,然后参考https://cloud.tencent.com/developer/article/1930775
6、Fonts目录,C:\Windows\Fonts
该目录是存放字体文件的,但病毒木马爱钻这个目录
由于该目录在UI上不像普通文件夹,不易发现里面的异常文件,可参考https://cloud.tencent.com/developer/article/1613296
7、C:\ProgramData\Microsoft\Windows\Caches\*.dll
该目录默认没有.dll文件,存在话可能就是病毒木马钻这里了,之前遇到过一个case,系统进不去,转圈,其他F8分支都进不去系统,安全模式可以进系统
https://cloud.tencent.com/developer/article/1938502
有个注册表可以调C:\ProgramData的位置,一般是不建议动ProgramData目录位置的,因为很多地方依赖它,遇到过改ProgramData位置导致系统异常的的case:https://cloud.tencent.com/developer/article/1935717
8、C:\Windows\Resources\Themes\ 主题目录如果缺失aero*,可能导致看不到图形界面
解决办法:从正常系统拷贝,在winpe下替换
9、AppLocker目录,C:\Windows\System32\AppLocker
该目录默认是空文件夹,删除可能导致系统开始菜单异常
sihost.exe对应的进程名为shell infrastructure host 「外壳shell基础设施infrastructure宿主host」,就是和OS的外壳有关的东西都依赖它,不能关闭

开始菜单报错一般是因为ShellExperienceHost起不来导致的问题,我们查看了当时的任务管理器,确实没有看到SEH在运行,查看app log也没有SHE的crash报错,这个问题应该发生在Sihost.exe去激活SEH的过程中出现的问题
程序包Microsoft.Windows.ShellExperienceHost_  部署被AppLocker阻止。
procmon能监测到 CreateFile              C:\Windows\System32\AppLocker\APPX.AppLocker            PATH NOT FOUND
在问题机器中发现C:\windows\system32下面不存在AppLocker这个文件夹,而正常机器中是有的,默认是空的
创建了一个新文件夹命名为AppLocker之后,点击开始菜单,可以正常工作。
也可以使用第三方软件StartIsBack(适用Win10、不适用Win11,适用Win11的是StartAllBack)改造开始菜单为经典菜单

10、C:\Windows\System32\appmgmt ,别看子目录是空的,Windows系统博大精深(处处是坑),别看见空的就想删,上面的AppLocker就是例子
appmgmt是个服务,sc qc appmgmt

sc qdescription appmgmt

描述:  为通过组策略部署的软件处理安装、删除以及枚举请求。如果该服务被禁用,则用户将不能安装、删除或枚举通过组策略部署的软件。如果此服务被禁用,则直接依赖于它的所有服务都将无法启动。
11、C:\Program Files\Cloudbase Solutions,这是系统组件,禁用或删除会影响系统重置密码等功能,具体请参考https://cloud.tencent.com/developer/article/1883449
12、C:\Windows\System32\config
举2个case
系统进不去,报错注册表文件C:\Windows\System32\config\SYSTEM损坏,替换为C:\Windows\System32\config\RegBack\SYSTEM后重启机器,蓝屏,报BAD SYSTEM CONFIG INFO,整体替换为备份注册表C:\Windows\System32\config\RegBack目录的DEFAULT、SYSTEM、SOFTWARE、SECURITY、SAM后重启重新识别硬件并最终顺利进入系统。
②进系统特别慢,发现C:\Windows\System32\config\RegBack\SYSTEM 这个文件就1.5G,用微软出的特殊软件 dureg 或第三方注册表软件可以定位具体是哪个子目录最大,在有备份的情况下,可删除异常的子目录来改造SYSTEM注册表使之变小后放回原系统开机对比。

【问题原因】驱动问题导致System注册表占用过大(1.5G),系统无法加载,通过查询src mouse sideband发现与Multipoint Service有关:
  http://www.yourpcdrivers.com/drivers/src-mouse-sideband-1/59349/89da474cc143387cfaa1964e5cae19eb
  为什么是1.5G,请参考如下:
  https://docs.microsoft.com/zh-cn/windows/win32/sysinfo/registry-storage-space 
打开Registry Workshop → 文件 → 加载配置单元 → 接下来,通常我们只需要查看ControlSet001、ControlSet002和CurrentControlSet三个项的属性即可,通过查看所有子项数目即可初步判断,超过1万条的就有疑问。
顺藤摸瓜,当注册表子项条目过多时,可以通过双击展开其子子项,通过展开条目数也可以快速定位问题注册表位置,问题现象:当其子子项过多时,加载非常慢甚至出现无响应。发现异常注册表项时(非系统关键注册表),可以对其进行批量删除即可。注意:注册表操作前建议先备份。
前面我们用到了“查看属性、双击展开”方式来看注册表子项数目,下面我们通过经验判断查找可能的异常子项,如:Enum子项应该优先关注带大括号{}的子项,这样方便快速定位问题注册表项

在删除SRCMouPdo时无法删除,提示权限不足,查看属性发现只有system用户才能操作,这就需要提权操作,参考https://cloud.tencent.com/developer/article/1880777
最终将处理好的SYSTEM注册表通过winpe放回原机器,并执行chkdsk /f 检查文件系统无异常后重启验证效果可快速进入系统。
13、其他Windows关键目录,可参考https://cloud.tencent.com/developer/article/1618592

编辑:航网科技   来源:腾讯云

本文版权归原作者所有 转载请注明出处

联系我们

客服部:深圳市龙华区龙胜商业大厦5楼B5区

业务部:深圳市南山区讯美科技广场2栋12楼1202

资质证书

  • Copyright © 2011-2020 www.hangw.com. All Rights Reserved 深圳航网科技有限公司 版权所有 增值电信业务经营许可证:粤B2-20201122 - 粤ICP备14085080号

    在线客服

    微信扫一扫咨询客服


    全国免费服务热线
    0755-36300002

    返回顶部