输入关键词开始搜索

桌面运维排障手册 — Windows 系统篇

两年一线运维经验沉淀,覆盖 Windows 系统日常排障全场景。


一、蓝屏 (BSOD) 速查表

错误代码常见原因解决
INACCESSIBLE_BOOT_DEVICE硬盘控制器驱动不匹配BIOS 切换 AHCI/IDE → 安全模式重装驱动
MEMORY_MANAGEMENT内存条故障 / 驱动内存泄漏逐条拔插内存 → WinDbg 分析 dump → sfc /scannow
DRIVER_IRQL_NOT_LESS_OR_EQUAL网卡/显卡驱动冲突安全模式 → 设备管理器回滚最近驱动
CRITICAL_PROCESS_DIED系统关键进程被终止sfc /scannowDISM /RestoreHealth
KERNEL_SECURITY_CHECK_FAILURE驱动签名/安全软件冲突卸载第三方安全软件/虚拟光驱
UNMOUNTABLE_BOOT_VOLUME文件系统损坏PE → chkdsk C: /f /r
SYSTEM_THREAD_EXCEPTION_NOT_HANDLED驱动程序异常安全模式卸载最近安装的驱动/软件
NTFS_FILE_SYSTEMNTFS 文件系统损坏 / 硬盘坏道chkdsk C: /f /r → CrystalDiskInfo 看 SMART
PAGE_FAULT_IN_NONPAGED_AREA内存故障 / 虚拟内存损坏内存诊断 → 重建 pagefile.sys
DRIVER_POWER_STATE_FAILURE驱动电源管理问题更新网卡/显卡驱动 → 关闭快速启动
VIDEO_TDR_FAILURE显卡驱动超时DDU 彻底卸载显卡驱动 → 重装
DPC_WATCHDOG_VIOLATIONSSD 固件问题(常见于 NVMe)更新 SSD 固件 → 更新存储控制器驱动

通用排查步骤:

  1. 记录错误代码(拍照,记具体文字)
  2. 安全模式能进 → 最近安装的驱动/软件问题
  3. 进不了安全模式 → PE → chkdskDISM
  4. BlueScreenView 分析 C:\Windows\Minidump\*.dmp

二、系统启动与引导修复

“Bootmgr is missing” / “Missing operating system”

:: PE 启动 → 命令行
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd

“Windows 无法启动。最近的硬件或软件更改…”

:: 进入恢复环境 → 高级选项 → 命令提示符
bcdedit /enum                              # 查看引导项
bcdedit /set {default} safeboot minimal    # 强制安全模式启动
:: 修复后取消:
bcdedit /deletevalue {default} safeboot

开机卡在自动修复循环

:: 进入命令提示符
bcdedit /set {default} recoveryenabled no  # 禁用自动修复
chkdsk C: /f /r
sfc /scannow

三、Windows 更新故障

问题解决
更新进度条卡住不动硬重启 → 进系统后会回滚 → 清缓存后重试
报错 0x80070002清理 SoftwareDistribution → DISM 修复
报错 0x80070422检查 Windows Update 服务是否被禁用 → services.msc
报错 0x8024402C代理设置错误 → netsh winhttp reset proxy
更新后反复回滚卸载最近安装的补丁 → 暂停更新 → 等微软修复
更新后打印机/软件异常卸载 KBxxxxxx → wusa /uninstall /kb:xxxxxx
:: 通用清理流程
net stop wuauserv & net stop bits & net stop cryptsvc
del /f /s /q C:\Windows\SoftwareDistribution\*
del /f /s /q C:\Windows\System32\catroot2\*
net start wuauserv & net start bits & net start cryptsvc
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

四、磁盘空间分析与清理

:: 快速定位大文件夹
du -sh C:\* | sort -rh | head -15           # Git Bash / WSL
:: 或用 WinDirStat / TreeSize / WizTree

:: 常见元凶(按吃掉空间的概率排序)
C:\Windows\Temp\                              # 临时文件 → 全删
C:\Windows\SoftwareDistribution\              # 更新缓存 → 安全删除
C:\Windows\WinSxS\                            # 组件存储 → DISM 清理
C:\Users\*\AppData\Local\Temp\                # 用户临时文件
C:\Windows\Logs\CBS\                          # CBS 日志膨胀(可安全删除)
C:\Windows\Installer\                         # 补丁卸载缓存(谨慎)
C:\Windows\System32\LogFiles\                 # IIS 日志(如果装了 IIS)
C:\ProgramData\Microsoft\Windows\WER\         # 错误报告存档
C:\hiberfil.sys                               # 休眠文件 → powercfg -h off
C:\pagefile.sys                               # 页面文件

:: 安全清理
cleanmgr                                       # 磁盘清理(选"清理系统文件"
DISM /Online /Cleanup-Image /StartComponentCleanup /ResetBase

已删除文件但空间未释放?

# 进程仍持有文件句柄
handle64.exe -a | findstr deleted              # Sysinternals Handle
# 找到持有进程 → 重启该进程或 close 句柄

五、用户配置文件损坏

现象: 登录后桌面空白/开始菜单不工作/提示”以临时配置文件登录”

步骤:
1. 重启 → 是否恢复?(有时重启就自动重建了)
2. 注册表检查:
   regedit → HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
   查找以 .bak 结尾的项 → 删除 .bak 后缀(或删除该项让系统重建)
3. 域环境:删除本机缓存的用户配置文件
   此电脑 → 属性 → 高级系统设置 → 用户配置文件 → 设置 → 删除
4. 重建后检查桌面/文档/收藏夹是否有数据丢失(通常备份在 C:\Users\xxx.OLD\)

六、开机自启管理

:: 查看所有启动项
msconfig → 启动 → 打开任务管理器
任务管理器 → 启动 → 禁用不需要的

:: 更多启动项位置(有些软件藏在这里)
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\
regedit → HKCU\Software\Microsoft\Windows\CurrentVersion\Run
regedit → HKLM\Software\Microsoft\Windows\CurrentVersion\Run
任务计划程序 → taskschd.msc
服务 → services.msc → 启动类型设为"自动"的服务

:: 高级工具
Autoruns (Sysinternals)                      # 最全面的启动项查看工具

七、系统文件修复三板斧

sfc /scannow                                  # 系统文件检查修复
DISM /Online /Cleanup-Image /RestoreHealth    # 从 Windows Update 修复映像
DISM /Online /Cleanup-Image /RestoreHealth /Source:D:\sources\install.wim /LimitAccess  # 从本地 ISO 修复

八、系统性能问题排查

CPU 高:

任务管理器 → 按 CPU 排序 → 找高 CPU 进程
常见原因:
  - Windows Update 后台安装 → 让它跑完
  - 杀毒软件全盘扫描 → 暂停或排除目录
  - Microsoft Compatibility Telemetry → 禁用 DiagTrack 服务
  - Search Indexer → 减少索引范围或暂停
  - 浏览器标签页太多 → 关掉一些

内存高:

任务管理器 → 性能 → 内存
  - "使用中(已压缩)"高 → 正常,是内存压缩机制
  - "分页缓冲池"异常高 → 内存泄漏驱动 → poolmon 定位
  - 非分页池高 → 驱动 bug → 更新所有驱动

磁盘 100%:

常见原因:
  - Superfetch/SysMain 服务(机械盘常见)→ 停用该服务
  - Windows Search → 停用
  - 磁盘即将损坏 → CrystalDiskInfo → 05/C5/C6 有值 → 赶紧换
  - 虚拟内存不足 → 加物理内存或扩大 pagefile

九、系统还原与重置

:: 创建还原点
wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "ManualRestore", 100, 7

:: 查看可用还原点
vssadmin list shadows

:: 系统重置(保留个人文件)
系统 → 恢复 → 重置此电脑 → 保留我的文件

:: 系统重置(完全清除)
系统 → 恢复 → 重置此电脑 → 删除所有内容

:: 从云下载重置(Win11)
系统 → 恢复 → 重置此电脑 → 云下载

十、输入法故障

问题解决
输入法切换不出来ctfmon.exe 可能没运行 → 运行 C:\Windows\System32\ctfmon.exe
输入法栏消失设置 → 时间和语言 → 语言 → 选项 → 添加/恢复输入法
中文输入法打出乱码清除输入法用户词库 → 或重装输入法
Win+Space 无法切换检查语言设置是否只剩一种语言
特定应用打不出中文腾讯系游戏常见 → 切换为兼容模式运行 / 更换输入法

十一、注册表常见操作

:: 备份注册表
reg export HKCU\Software\xxx backup.reg

:: 查看某软件的注册表项
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall /s | findstr "软件名"

:: 修复注册表权限(如果某键值无法修改)
regedit → 右键该项 → 权限 → 添加当前用户完全控制

:: 快速跳转到常用位置
HKCU\Software\Microsoft\Windows\CurrentVersion\Run    # 用户启动项
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList  # 用户配置文件列表

十二、运维自动化 — 常用 PowerShell 脚本

# 批量获取系统信息
Get-ComputerInfo | Select WindowsVersion,OsName,CsTotalVisibleMemorySize,CsProcessors

# 检查所有服务状态(只看停止的自动服务)
Get-Service | Where-Object {$_.StartType -eq "Automatic" -and $_.Status -ne "Running"}

# 检查最近安装的补丁
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 20

# 检查磁盘健康状态
Get-PhysicalDisk | Select-Object FriendlyName,HealthStatus,OperationalStatus,MediaType

# 导出已安装软件列表
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*,
                 HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
  Where-Object {$_.DisplayName -ne $null} |
  Select-Object DisplayName,DisplayVersion,Publisher |
  Sort-Object DisplayName |
  Export-Csv -Path installed.csv -NoTypeInformation

# 远程关机/重启
Restart-Computer -ComputerName "PC-Name" -Force -Wait
Stop-Computer -ComputerName "PC-Name" -Force

# 重置网络栈
netsh int ip reset
netsh winsock reset
ipconfig /flushdns

十三、高频命令一页速查

Windows (CMD)

ipconfig /all                      # 网络全貌
ipconfig /release && ipconfig /renew  # 重新获取 IP
ipconfig /flushdns                 # 清 DNS
ping -t 8.8.8.8                    # 长 ping
tracert -d 8.8.8.8                 # 路由追踪
netstat -ano | findstr :443        # 端口占用
gpupdate /force                    # 刷新组策略
gpresult /r                        # GPO 结果
sfc /scannow                       # 系统文件修复
DISM /Online /Cleanup-Image /RestoreHealth  # 系统映像修复
chkdsk C: /f /r                    # 磁盘检查
tasklist | findstr "xxx"           # 查进程
taskkill /f /pid 1234              # 杀进程
systeminfo                         # 系统信息+补丁
net user %username% /domain        # 域用户信息
whoami /fqdn                       # 当前域用户
nltest /dsgetdc:domain.com         # 查找域控
set                                # 查看登录服务器
netsh wlan show interfaces         # WiFi 详情
net use                            # 当前网络连接

Linux

ping -c 4 8.8.8.8                 # ping 4 次
ss -tlnp                           # 监听端口
ss -antp                           # 所有 TCP 连接
ip addr show                       # IP 信息
ip route show                      # 路由表
dig example.com                    # DNS 查询
traceroute -n 8.8.8.8             # 路由追踪
df -h                              # 磁盘空间
du -sh /* | sort -rh | head        # 目录大小
free -h                            # 内存
top                                # 进程
ps aux --sort=-%mem | head         # 内存大户
dmesg -T | tail -50                # 内核日志
journalctl -u nginx -f             # 服务日志
systemctl status nginx             # 服务状态