一、故障排除工具
Windows Server 2022提供了丰富的故障排除工具,掌握这些工具的使用方法是高效解决问题的关键。在企业IT环境中,快速定位和解决问题能够最大程度减少业务中断时间。
学习交流加群风哥微信: itpux-com,在FGedu企业的Windows Server运维实践中,我们建立了一套完整的故障排除流程,结合系统内置工具和第三方工具,确保能够快速响应各类故障。
1.1 事件查看器
事件查看器是Windows Server最核心的故障诊断工具,记录了系统和应用程序的所有重要事件。
方法1:图形界面
Win + R -> eventvwr.msc -> 回车
方法2:PowerShell
PS C:\> eventvwr
方法3:命令行
C:\> eventvwr.exe
# 查看关键事件日志
# Windows日志分类:
– 应用程序日志:Application
– 安全日志:Security
– 系统日志:System
– 设置日志:Setup
– 转发的事件:ForwardedEvents
# PowerShell查询事件日志
# 查询最近的系统错误
PS C:\> Get-EventLog -LogName System -EntryType Error -Newest 10
Index Time EntryType Source InstanceID Message
—– —- ——— —— ———- ——-
12345 Apr 03 10:00 Error Service Control Man… 3221232485 A service…
12344 Apr 03 09:55 Error NETLOGON 3221232484 Session…
# 查询特定事件ID
PS C:\> Get-WinEvent -FilterHashtable @{LogName=’System’; ID=7031} -MaxEvents 5
ProviderName: Service Control Manager
TimeCreated Id LevelDisplayName Message
———– — —————- ——-
4/3/2026 10:00:00 AM 7031 Warning The Windows Update service terminated…
# 导出事件日志
PS C:\> wevtutil epl System C:\Logs\system_export.evtx
# 查询应用程序崩溃事件
PS C:\> Get-WinEvent -FilterHashtable @{LogName=’Application’; ProviderName=’Application Error’} -MaxEvents 10
# 统计错误事件数量
PS C:\> Get-EventLog -LogName System -EntryType Error -After (Get-Date).AddDays(-1) | Measure-Object
Count : 15
Average :
Sum :
Max :
Min :
1.2 性能监视器
性能监视器用于实时监控系统性能,帮助定位性能瓶颈。
方法1:图形界面
Win + R -> perfmon.msc -> 回车
方法2:PowerShell
PS C:\> perfmon
# 关键性能计数器
CPU性能:
– \Processor(_Total)\% Processor Time
– \Processor(_Total)\% User Time
– \Processor(_Total)\% Privileged Time
– \System\Processor Queue Length
内存性能:
– \Memory\Available MBytes
– \Memory\% Committed Bytes In Use
– \Memory\Pages/sec
– \Memory\Page Faults/sec
磁盘性能:
– \PhysicalDisk(_Total)\Disk Reads/sec
– \PhysicalDisk(_Total)\Disk Writes/sec
– \PhysicalDisk(_Total)\Avg. Disk sec/Read
– \PhysicalDisk(_Total)\Avg. Disk sec/Write
– \PhysicalDisk(_Total)\% Disk Time
网络性能:
– \Network Interface(*)\Bytes Total/sec
– \Network Interface(*)\Current Bandwidth
– \TCPv4\Connections Established
– \TCPv4\Segments Retransmitted/sec
# PowerShell获取性能计数器
PS C:\> Get-Counter -Counter “\Processor(_Total)\% Processor Time” -SampleInterval 1 -MaxSamples 5
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\processor(_total)\% processor time :
25.5
# 创建数据收集器集
PS C:\> $counters = @(
“\Processor(_Total)\% Processor Time”,
“\Memory\Available MBytes”,
“\PhysicalDisk(_Total)\% Disk Time”
)
PS C:\> Get-Counter -Counter $counters -Continuous | Export-Counter -Path C:\PerfLogs\perf.blg -FileFormat BLG
# 查看性能日志
PS C:\> Import-Counter -Path C:\PerfLogs\perf.blg | Select-Object -First 10
1.3 系统信息工具
系统信息工具提供详细的系统配置信息,帮助快速了解系统状态。
# msinfo32 – 系统信息
PS C:\> msinfo32
# systeminfo – 命令行系统信息
PS C:\> systeminfo
fgedu.net.cn: FGEDU-DC01
OS 名称: Microsoft Windows Server 2022 Datacenter
OS 版本: 10.0.20348 暂缺 Build 20348
OS 制造商: Microsoft Corporation
OS 配置: 主域控制器
OS 构建类型: Multiprocessor Free
系统类型: x64-based PC
处理器: 已安装 2 个处理器。
[01]: Intel64 Family 6 Model 85 Stepping 7 GenuineIntel ~2100 Mhz
[02]: Intel64 Family 6 Model 85 Stepping 7 GenuineIntel ~2100 Mhz
BIOS 版本: Dell Inc. 2.8.1, 2025/1/15
Windows 目录: C:\Windows
系统目录: C:\Windows\system32
启动设备: \Device\HarddiskVolume1
系统区域设置: zh-cn;中文(中国)
输入法区域设置: zh-cn;中文(中国)
时区: (UTC+08:00) 北京,重庆,香港特别行政区,乌鲁木齐
物理内存总量: 65,536 MB
可用的物理内存: 45,123 MB
虚拟内存: 最大值: 131,072 MB
虚拟内存: 可用: 110,000 MB
# 查看已安装的更新
PS C:\> wmic qfe list brief
Description HotFixID InstalledOn
================ ============= ============
Update KB5034439 3/15/2026
Security Update KB5034122 3/1/2026
# 查看驱动程序信息
PS C:\> driverquery /v /fo table
模块名称 显示名称 驱动程序类型 链接日期
========= ================= ============== =============
1394ohci 1394 OHCI 主机… 内核 2025/6/21
ACPI Microsoft ACPI… 内核 2025/6/21
# 查看服务状态
PS C:\> Get-Service | Where-Object {$_.Status -eq “Running”} | Select-Object Name, DisplayName, Status | Format-Table -AutoSize
Name DisplayName Status
—- ———– ——
ADWS Active Directory Web Services Running
DNS DNS Server Running
EventLog Windows Event Log Running
二、系统启动故障
2.1 启动故障诊断
Windows Server启动故障是最严重的故障类型,需要掌握多种恢复方法。
1. 蓝屏死机(BSOD)
– 原因:驱动程序错误、硬件故障、系统文件损坏
– 解决:安全模式启动、系统还原、修复安装
2. 黑屏无响应
– 原因:显卡驱动问题、系统文件损坏
– 解决:安全模式、最后一次正确配置
3. 启动循环
– 原因:Windows更新失败、注册表损坏
– 解决:系统还原、启动修复
4. 引导管理器错误
– 原因:BCD损坏、引导分区问题
– 解决:BCD重建、引导修复
# 进入高级启动选项
方法1:强制重启三次
– 开机出现Windows徽标时强制关机
– 重复三次后自动进入恢复环境
方法2:安装介质启动
– 使用Windows Server 2022安装U盘启动
– 选择”修复计算机”
# 启动修复命令
# 进入命令提示符(WinRE)
# 检查磁盘错误
X:\> chkdsk C: /f /r
文件系统的类型是 NTFS。
卷标是 System。
CHKDSK 正在校验文件(阶段 1/5)…
已处理 123456 个文件记录。
已处理 12345 个索引项。
CHKDSK 正在校验索引(阶段 2/5)…
已处理 123456 个索引项。
CHKDSK 正在校验安全描述符(阶段 3/5)…
已处理 12345 个安全描述符。
CHKDSK 正在校验文件数据(阶段 4/5)…
已处理 123456 个文件记录。
CHKDSK 正在校验可用空间(阶段 5/5)…
已处理 123456 个可用数据记录记录。
Windows 已扫描文件系统,没有发现问题。
无需采取进一步操作。
# 修复系统文件
X:\> dism /image:C:\ /cleanup-image /restorehealth
部署映像服务和管理工具
版本: 10.0.20348.1
映像版本: 10.0.20348.1
[==========================100.0%==========================]
还原操作已成功完成。
# 重建BCD引导
X:\> bootrec /scanos
扫描所有磁盘以查找 Windows 安装。
请稍候,因为这可能需要一段时间…
成功扫描到的 Windows 安装总数: 1
[1] C:\Windows
X:\> bootrec /fixmbr
操作已成功完成。
X:\> bootrec /fixboot
操作已成功完成。
X:\> bootrec /rebuildbcd
扫描所有磁盘以查找 Windows 安装。
请稍候,因为这可能需要一段时间…
成功扫描到的 Windows 安装总数: 1
[1] C:\Windows
将安装添加到启动列表? Yes(Y)/No(N)/All(A) -> Y
操作已成功完成。
# 系统还原
X:\> rstrui.exe
# 在图形界面中选择还原点进行系统还原
2.2 安全模式故障排除
安全模式是解决启动故障的重要工具,可以在最小化环境下诊断问题。
方法1:系统配置工具
PS C:\> msconfig
# 在”引导”选项卡勾选”安全引导”
方法2:BCDedit命令
PS C:\> bcdedit /set {default} safeboot minimal
操作已成功完成。
方法3:Shift+重启
– 按住Shift键点击”重启”
– 选择疑难解答 -> 高级选项 -> 启动设置 -> 重启
– 按4进入安全模式
# 安全模式下的故障排除
# 1. 卸载问题驱动程序
PS C:\> Get-WmiObject Win32_PnPSignedDriver | Where-Object {$_.DeviceName -like “*NVIDIA*”} | Select-Object DeviceName, DriverVersion
DeviceName DriverVersion
———- ————-
NVIDIA GeForce RTX 4090 31.0.15.1234
PS C:\> pnputil /delete-driver oem12.inf /uninstall /force
Microsoft PnP 工具
正在删除驱动程序包: oem12.inf
驱动程序包已成功删除。
# 2. 禁用问题服务
PS C:\> Get-Service | Where-Object {$_.DisplayName -like “*第三方服务*”} | Set-Service -StartupType Disabled
# 3. 检查系统文件完整性
PS C:\> sfc /scannow
开始系统扫描。此过程将需要一些时间。
开始系统扫描的验证阶段。
验证 100% 已完成。
Windows 资源保护找到了损坏文件并成功修复了它们。
# 4. 查看蓝屏转储文件
PS C:\> # 下载并安装Windows Debugging Tools
PS C:\> # 使用WinDbg分析转储文件
PS C:\> Get-ChildItem C:\Windows\Minidump
目录: C:\Windows\Minidump
Mode LastWriteTime Length Name
—- ————- —— —-
-a—- 4/3/2026 9:00 AM 123456 040326-12345-01.dmp
# 分析蓝屏转储
PS C:\> # 使用WinDbg打开转储文件
!analyze -v
# 查看导致蓝屏的驱动程序
三、网络连接故障
3.1 网络诊断工具
网络故障是企业IT环境中最常见的问题之一,需要熟练掌握各种网络诊断工具。
# 1. ipconfig – IP配置查看
PS C:\> ipconfig /all
Windows IP 配置
fgedu.net.cn . . . . . . . . . . . . . : FGEDU-DC01
主 DNS 后缀 . . . . . . . . . . . : fgedu.net.cn
节点类型 . . . . . . . . . . . . : 混合
IP 路由已启用 . . . . . . . . . . : 否
WINS 代理已启用 . . . . . . . . . : 否
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Intel(R) Ethernet Connection
物理地址. . . . . . . . . . . . . : 00-1A-2B-3C-4D-5E
DHCP 已启用 . . . . . . . . . . . : 否
自动配置已启用. . . . . . . . . . : 是
IPv4 地址 . . . . . . . . . . . . : 10.0.1.10(首选)
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 10.0.1.1
DNS 服务器 . . . . . . . . . . . : 10.0.1.10
# 2. ping – 连通性测试
PS C:\> ping 10.0.1.1 -t
正在 Ping 10.0.1.1 具有 32 字节的数据:
来自 10.0.1.1 的回复: 字节=32 时间<1ms TTL=64
来自 10.0.1.1 的回复: 字节=32 时间<1ms TTL=64
来自 10.0.1.1 的回复: 字节=32 时间<1ms TTL=64
10.0.1.1 的 Ping 统计信息:
数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 0ms,最长 = 0ms,平均 = 0ms
# 3. tracert - 路由追踪
PS C:\> tracert www.baidu.com
通过最多 30 个跃点跟踪到 www.baidu.com [110.242.68.66] 的路由:
1 1 ms 1 ms 1 ms 10.0.1.1
2 2 ms 2 ms 2 ms 192.168.1.1
3 5 ms 5 ms 5 ms 202.96.128.86
4 10 ms 10 ms 10 ms 110.242.68.66
跟踪完成。
# 4. nslookup – DNS解析测试
PS C:\> nslookup www.fgedu.net.cn
服务器: FGEDU-DC01.fgedu.net.cn
Address: 10.0.1.10
名称: www.fgedu.net.cn
Address: 10.0.1.100
# 5. netstat – 网络连接状态
PS C:\> netstat -an | findstr “LISTENING”
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
TCP 0.0.0.0:443 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING
# 6. Test-NetConnection – PowerShell网络测试
PS C:\> Test-NetConnection -ComputerName 10.0.1.100 -Port 443
ComputerName : 10.0.1.100
RemoteAddress : 10.0.1.100
RemotePort : 443
InterfaceAlias : Ethernet
SourceAddress : 10.0.1.10
TcpTestSucceeded : True
3.2 常见网络故障排除
针对常见的网络故障场景,提供具体的排查方法。
# 检查DHCP服务
PS C:\> Get-DhcpServerv4Scope
ScopeId SubnetMask Name State StartRange EndRange
——- ———- —- —– ———- ——–
10.0.1.0 255.255.255.0 FGedu-Scope Active 10.0.1.100 10.0.1.200
# 释放并重新获取IP
PS C:\> ipconfig /release
Windows IP 配置
在以太网适配器 以太网上释放了 IP 地址…
PS C:\> ipconfig /renew
Windows IP 配置
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . . :
IPv4 地址 . . . . . . . . . . . . : 10.0.1.150
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 10.0.1.1
# 故障2:DNS解析失败
# 清除DNS缓存
PS C:\> ipconfig /flushdns
Windows IP 配置
已成功刷新 DNS 解析缓存。
# 检查DNS服务器配置
PS C:\> Get-DnsClientServerAddress
InterfaceAlias Interface Description ServerAddresses
————– ——————- —————
以太网 Intel Ethernet {10.0.1.10}
# 测试DNS服务器
PS C:\> Test-DnsServer -IPAddress 10.0.1.10 -ZoneName fgedu.net.cn
IPAddress Result
——— ——
10.0.1.10 Success
# 故障3:网络适配器故障
# 重置网络适配器
PS C:\> netsh winsock reset
成功地重置 Winsock 目录。
必须重新启动计算机才能完成重置。
PS C:\> netsh int ip reset
重置全局参数。
重新启动计算机以完成此操作。
# 重置网络堆栈
PS C:\> netsh advfirewall reset
确定。
# 故障4:防火墙阻止连接
# 检查防火墙状态
PS C:\> Get-NetFirewallProfile | Select-Object Name, Enabled
Name Enabled
—- ——-
Domain True
Private True
Public True
# 添加防火墙规则
PS C:\> New-NetFirewallRule -DisplayName “FGedu Web App” -Direction Inbound -LocalPort 8080 -Protocol TCP -Action Allow
Name : {12345678-1234-1234-1234-123456789012}
DisplayName : FGedu Web App
Description :
DisplayGroup :
Group :
Enabled : True
Profile : Any
Platform : {Any}
Direction : Inbound
Action : Allow
# 查看防火墙日志
PS C:\> Get-Content C:\Windows\System32\LogFiles\Firewall\pfirewall.log | Select-Object -Last 10
2026-04-03 10:00:00 ALLOW TCP 10.0.1.100 10.0.1.10 443 54321 0 – – – – – – – –
四、Active Directory故障
4.1 AD复制故障
Active Directory复制故障会导致域控制器之间数据不一致,需要及时处理。
# 1. 检查复制状态
PS C:\> repadmin /showrepl /repsto
FGEDU-DC01
当前选项:
=================================
==== 入站邻居 ==================================
DC=fgedu,DC=net,DC=cn
FGEDU-DC02 via RPC
FGEDU-DC02 上 DC=fgedu,DC=net,DC=cn 的 DSA 对象 GUID: abc123
上次成功的时间: 2026-04-03 09:55:00
1 次连续失败。
上次错误: 1722 (0x6ba):
RPC 服务器不可用。
# 2. 强制复制
PS C:\> repadmin /syncall /APeD
正在同步所有分区中的所有 DC…
从 FGEDU-DC01 发送同步命令
正在同步分区 DC=fgedu,DC=net,DC=cn
已成功同步分区 DC=fgedu,DC=net,DC=cn
正在同步分区 CN=Configuration,DC=fgedu,DC=net,DC=cn
已成功同步分区 CN=Configuration,DC=fgedu,DC=net,DC=cn
# 3. 检查复制元数据
PS C:\> repadmin /showmeta “CN=Users,DC=fgedu,DC=net,DC=cn”
Loc.USN Originating DSA Org.USN Org.Time/Date Ver Attribute
======= =============== ======= ============= === =========
123456 FGEDU-DC01 123456 2026-04-01 1 objectClass
123457 FGEDU-DC01 123457 2026-04-01 1 cn
123458 FGEDU-DC01 123458 2026-04-01 1 distinguishedName
# 4. 检查AD健康状态
PS C:\> dcdiag /test:replications
目录服务器诊断
正在执行初始设置:
正在尝试查找主服务器…
* 正在验证 FGEDU-DC01 的主服务器。
正在验证企业网络上下文中的复制:
正在验证站点之间的复制。
正在验证站点内的复制。
正在验证延迟复制。
测试结果:
通过: FGEDU-DC01
通过: FGEDU-DC02
# 5. 检查DNS记录
PS C:\> nslookup -type=SRV _ldap._tcp.fgedu.net.cn
服务器: FGEDU-DC01.fgedu.net.cn
Address: 10.0.1.10
_ldap._tcp.fgedu.net.cn SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = fgedu-dc01.fgedu.net.cn
_ldap._tcp.fgedu.net.cn SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = fgedu-dc02.fgedu.net.cn
4.2 用户认证故障
用户认证故障会影响用户登录和资源访问,需要快速定位原因。
# 1. 检查账户状态
PS C:\> Get-ADUser -Identity zhangsan -Properties LockedOut, Enabled, PasswordExpired
DistinguishedName : CN=风哥1号,OU=IT部,DC=fgedu,DC=net,DC=cn
Enabled : True
LockedOut : True
PasswordExpired : False
# 2. 解锁账户
PS C:\> Unlock-ADAccount -Identity zhangsan
# 3. 重置密码
PS C:\> Set-ADAccountPassword -Identity zhangsan -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “Fgedu@User123” -Force)
# 4. 检查密码策略
PS C:\> Get-ADDefaultDomainPasswordPolicy
ComplexityEnabled : True
LockoutDuration : 00:30:00
LockoutObservationWindow : 00:30:00
LockoutThreshold : 5
MaxPasswordAge : 90.00:00:00
MinPasswordAge : 1.00:00:00
MinPasswordLength : 8
# 5. 检查Kerberos票据
PS C:\> klist
当前登录 ID 为 0:0x3e7
缓存: 0:0: 票证
缓存: 2:0: 票证
#6> 客户端: zhangsan @ FGEDU.NET.CN
服务器: krbtgt/FGEDU.NET.CN @ FGEDU.NET.CN
KerbTicket 加密类型: RSADSI RC4-HMAC(NTLM)
票证时间: 4/3/2026 8:00:00 ; 4/3/2026 18:00:00 ; 4/3/2026 8:00:00
续订时间: 4/10/2026 8:00:00
会话密钥类型: RSADSI RC4-HMAC(NTLM)
# 6. 清除Kerberos票据
PS C:\> klist purge
清除缓存 0:0: 票证已成功清除。
清除缓存 2:0: 票证已成功清除。
# 7. 检查安全日志
PS C:\> Get-WinEvent -FilterHashtable @{LogName=’Security’; ID=4740} -MaxEvents 5
ProviderName: Microsoft-Windows-Security-Auditing
TimeCreated Id LevelDisplayName Message
———– — —————- ——-
4/3/2026 9:30:00 AM 4740 Information 用户帐户被锁定…
五、存储系统故障
5.1 磁盘故障诊断
磁盘故障可能导致数据丢失,需要及时发现和处理。
# 1. 检查磁盘状态
PS C:\> Get-PhysicalDisk
FriendlyName MediaType Size HealthStatus OperationalStatus
———— ——— —- ———— —————–
Dell SSD SSD 480 GB Healthy OK
Dell HDD HDD 2 TB Warning Predictive Failure
# 2. 检查磁盘错误日志
PS C:\> Get-WinEvent -FilterHashtable @{LogName=’System’; ProviderName=’disk’} -MaxEvents 10
ProviderName: disk
TimeCreated Id LevelDisplayName Message
———– — —————- ——-
4/3/2026 10:00:00 AM 7 Warning 设备 \Device\Harddisk1\DR1 指定的块…
# 3. 检查卷状态
PS C:\> Get-Volume
DriveLetter FileSystemLabel FileSystem Type HealthStatus SizeRemaining Size
———- ————— ———- —- ———— ————- —-
C System NTFS Fixed Healthy 100 GB 200 GB
D Data NTFS Fixed Healthy 500 GB 1 TB
# 4. 运行磁盘检查
PS C:\> chkdsk D: /f /r /x
文件系统的类型是 NTFS。
卷标是 Data。
CHKDSK 正在校验文件(阶段 1/5)…
已处理 123456 个文件记录。
CHKDSK 正在校验索引(阶段 2/5)…
已处理 12345 个索引项。
CHKDSK 正在校验安全描述符(阶段 3/5)…
CHKDSK 正在校验文件数据(阶段 4/5)…
CHKDSK 正在校验可用空间(阶段 5/5)…
Windows 已扫描文件系统,没有发现问题。
无需采取进一步操作。
# 5. 检查存储池状态
PS C:\> Get-StoragePool
FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
———— —————– ———— ———— ———-
Primordial OK Healthy True False
Pool1 OK Healthy False False
# 6. 检查虚拟磁盘状态
PS C:\> Get-VirtualDisk
FriendlyName ResiliencySettingName OperationalStatus HealthStatus Size
———— ——————— —————– ———— —-
VDisk1 Mirror OK Healthy 500 GB
VDisk2 Parity OK Healthy 1 TB
5.2 存储空间故障
存储空间故障会影响数据访问,需要及时修复。
# 1. 检查存储空间健康状态
PS C:\> Get-StorageSubSystem
FriendlyName HealthStatus OperationalStatus
———— ———— —————–
Windows Storage Warning Degraded
# 2. 查看存储空间详情
PS C:\> Get-VirtualDisk | Where-Object {$_.HealthStatus -ne “Healthy”}
FriendlyName ResiliencySettingName OperationalStatus HealthStatus Size
———— ——————— —————– ———— —-
VDisk3 Mirror Degraded Warning 200 GB
# 3. 修复存储空间
PS C:\> Repair-VirtualDisk -FriendlyName VDisk3
任务对象:
New-StorageRepairTask
# 4. 添加替换磁盘
PS C:\> Get-PhysicalDisk | Where-Object {$_.HealthStatus -eq “Unhealthy”}
FriendlyName MediaType Size HealthStatus OperationalStatus
———— ——— —- ———— —————–
Dell HDD HDD 2 TB Unhealthy Lost Communication
PS C:\> Reset-PhysicalDisk -FriendlyName “Dell HDD”
# 5. 重建存储池
PS C:\> Add-PhysicalDisk -StoragePoolFriendlyName Pool1 -PhysicalDisks (Get-PhysicalDisk | Where-Object {$_.CanPool -eq $true})
# 6. 检查文件系统损坏
PS C:\> Repair-Volume -DriveLetter D -SpotFix
# 7. 监控存储性能
PS C:\> Get-Counter -Counter “\PhysicalDisk(*)\Avg. Disk sec/Read”, “\PhysicalDisk(*)\Avg. Disk sec/Write” -SampleInterval 1 -MaxSamples 10
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\physicaldisk(0 c:)\avg. disk sec/read :
0.001
\\FGEDU-DC01\physicaldisk(0 c:)\avg. disk sec/write :
0.002
六、性能问题排查
6.1 CPU性能问题
CPU性能问题会导致系统响应缓慢,需要找出占用CPU的进程。
# 1. 查看CPU使用率
PS C:\> Get-Counter “\Processor(_Total)\% Processor Time”
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\processor(_total)\% processor time :
85.5
# 2. 查看高CPU进程
PS C:\> Get-Process | Sort-Object CPU -Descending | Select-Object -First 10
Handles NPM(K) PM(K) WS(K) 25.5
# 2. 查看高CPU进程
PS C:\> Get-Process | Sort-Object CPU -Descending
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
——- —— —– —– —— — — ———–
856 45 125000 150000 125.50 1234 1 w3wp
654 32 85000 100000 85.25 5678 1 sqlservr
432 21 45000 55000 45.10 9012 1 java
# 2. 查看高CPU进程详情
PS C:\> Get-Process -Id 1234 | Select-Object ProcessName, CPU, StartTime, Path
ProcessName : w3wp
CPU : 125.5
StartTime : 2026/4/3 8:00:00
Path : C:\Windows\System32\inetsrv\w3wp.exe
# 3. 查看进程线程
PS C:\> (Get-Process -Id 1234).Threads | Select-Object Id, ThreadState, ProcessorAffinity | Format-Table
Id ThreadState ProcessorAffinity
— ———– —————–
1234 Running 1
1235 Running 2
1236 Ready 3
# 4. 使用性能分析器
PS C:\> # 打开性能分析器
PS C:\> perfmon /sys
# 5. 检查CPU队列长度
PS C:\> Get-Counter “\System\Processor Queue Length”
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\system\processor queue length :
5
# 6. 检查CPU中断
PS C:\> Get-Counter “\Processor(_Total)\Interrupts/sec”, “\Processor(_Total)\% Interrupt Time”
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\processor(_total)\interrupts/sec :
1500
\\FGEDU-DC01\processor(_total)\% interrupt time :
0.5
6.2 内存性能问题
内存不足会导致系统性能下降,需要合理管理内存使用。
# 1. 查看内存使用情况
PS C:\> Get-ComputerInfo | Select-Object CsTotalPhysicalMemory, OsFreePhysicalMemory, OsTotalVirtualMemorySize, OsFreeVirtualMemory
CsTotalPhysicalMemory : 68719476736
OsFreePhysicalMemory : 47316959232
OsTotalVirtualMemorySize: 140737488224256
OsFreeVirtualMemory : 120000000000
# 2. 查看内存使用进程
PS C:\> Get-Process | Sort-Object WorkingSet64 -Descending | Select-Object ProcessName, @{Name=”Memory(MB)”;Expression={[math]::Round($_.WorkingSet64/1MB,2)}} -First 10
ProcessName Memory(MB)
———– ———-
sqlservr 8192.50
w3wp 4096.25
java 2048.75
# 3. 检查页面文件使用
PS C:\> Get-CimInstance -ClassName Win32_PageFileUsage
AllocatedBaseSize : 8192
CurrentUsage : 2048
Name : C:\pagefile.sys
PeakUsage : 3072
# 4. 检查内存压力
PS C:\> Get-Counter “\Memory\Available MBytes”, “\Memory\Pages/sec”, “\Memory\Page Faults/sec”
Timestamp CounterSamples
——— ————–
4/3/2026 10:00:00 AM \\FGEDU-DC01\memory\available mbytes :
45000
\\FGEDU-DC01\memory\pages/sec :
150
\\FGEDU-DC01\memory\page faults/sec :
500
# 5. 清理内存缓存
PS C:\> # 清理工作集
PS C:\> (Get-Process).Refresh()
# 6. 检查内存泄漏
PS C:\> # 使用RAMMap工具分析内存使用
PS C:\> # 或使用Performance Monitor创建内存跟踪
# 7. 调整页面文件
PS C:\> $computerSystem = Get-WmiObject -Class Win32_ComputerSystem
PS C:\> $computerSystem.AutomaticManagedPagefile = $false
PS C:\> $computerSystem.Put()
PS C:\> $pageFile = Get-WmiObject -Class Win32_PageFileSetting
PS C:\> $pageFile.InitialSize = 8192
PS C:\> $pageFile.MaximumSize = 16384
PS C:\> $pageFile.Put()
总结
Windows Server 2022故障排除是运维工程师的核心技能,需要熟练掌握各种诊断工具和排查方法。本教程详细介绍了系统启动故障、网络连接故障、Active Directory故障、存储系统故障和性能问题的排查方法,帮助运维人员快速定位和解决问题。
更多学习教程www.fgedu.net.cn,在实际工作中,建议建立完善的监控和告警体系,提前发现潜在问题,同时做好日常维护和备份工作,确保系统稳定运行。
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
