呢类情况其实我见过几次,尤其係机器 reboot 后突然间 WinRM 起唔到,大多数都唔一定係 WinRM service 本身有问题,而係底层设定或者 dependency 出咗状况。
我通常第一步會先看 Event Viewer → Windows → System/Application 的日志,再看 Microsoft-Windows-WinRM/Operational log,因为 WinRM 啟動失敗好多時都會留低比較明確的 error code。 之後可以用 winrm enumerate winrm/config/listener 檢查 listener 仲喺唔喺度,同埋確認 TCP 5985 或 5986 冇畀其他 Application 霸咗。另一个常見原因係 WinRM configuration 損壞,可以試下 winrm quickconfig 或 winrm invoke Restore winrm/Config 去驗證配置是否正常。
同时建议检查一下 HTTP Service、RPC、DCOM Server Process Launcher 等相关 dependency services 是否已成功启动,因为其中一个 service 出问题都有机会令 WinRM 跟住起唔到。 如果係 GPO 管理嘅环境,亦值得确认最近有冇 policy update 改动过 WinRM listener、Firewall 或 Service Startup 设定。 最后可以用 sc query winrm 同 winrm id 睇下目前服务状态同实际回传嘅错误讯息,通常会好快缩窄问题范围。
如果你能够拎到 Event Viewer 入面嘅具体错误码,基本上就可以进一步判断係 listener、port conflict、configuration corruption 定係 dependency failure。 希望以上方向帮到你,如果呢个回复对你有帮助,麻烦帮手撳一下 “Accept Answer”,等之后有同样问题嘅朋友都可以更快搵到解决方向