事件查看器 → 系統日誌 中反復出現:
「TermService」服務的性能庫 "C:\WINDOWS\system32\perfts.dll" 的配置信息同在注冊表中保存的受信任性能庫信息不匹配。此庫中的函數不會作為受信任函數處理。
事件來源:Perflib,事件 ID:2003,類型:警告。
安裝 Windows Server 2003 SP2 後,perfts.dll 文件版本更新(大小、時間戳變化),但注冊表 HKLM\SYSTEM\CurrentControlSet\Services\TermService\Performance 中緩存的庫信息(Library、Open、Collect、Close、First Counter、Last Counter、First Help、Last Help、Counter Names、Help Names)未同步更新,導致版本不匹配。
Terminal Services(終端服務)提供多會話環境,支援遠程桌面、遠程應用、遠程管理。禁用將導致無法遠程管理服務器,生產環境嚴禁禁用。
# 以管理員身份運行 CMD
lodctr /T:TermService
該命令將讀取 perfts.dll 當前版本信息,更新注冊表中對應的性能計數器配置。
# 1. 備份注冊表性能相關鍵值
reg export HKLM\SYSTEM\CurrentControlSet\Services\TermService\Performance TermService_Perf_Backup.reg
# 2. 重建所有性能計數器
lodctr /R
# 或針對性重建
lodctr /T:TermService
# 3. 驗證
typeperf "\Terminal Services\Active Sessions" -sc 1
# 應正常輸出計數器數值
僅在上述方法無效時嘗試,需極其謹慎:
# 刪除損壞的性能鍵值
reg delete HKLM\SYSTEM\CurrentControlSet\Services\TermService\Performance /f
# 重啟服務器或重新載入性能庫
lodctr /T:TermService
perfmon.msc → 添加「Terminal Services」計數器 → 應正常顯示圖表typeperf "\Terminal Services\Total Sessions" -sc 5 持續輸出無錯誤lodctr /R:納入月度補丁流程標準動作perflib 事件 ID 2003,告警觸發自動修復| 命令 | 功能 | 適用場景 |
|---|---|---|
| lodctr /R | 從註冊表還原所有性能計數器 | 系統級修復、補丁後批量修復 |
| lodctr /T:服務名 | 刷新指定服務性能庫信息 | 單服務修復、精準控制 |
| unlodctr 服務名 | 卸載服務性能計數器 | 移除不需要的計數器 |
| exctrlst.exe | 圖形化性能計數器啟用/禁用工具 | Windows 2000 Resource Kit 工具 |
TermService 性能庫不匹配是 SP2 升級後的已知問題,執行 lodctr /T:TermService 即可秒級修復。建議將性能計數器重建納入補丁管理 SOP,配合監控自動化,徹底消除此類干擾性警告。