這幾天遇到一個問題,剛裝好的WSUS服務器同步完補丁后,打算上線使用。挑了幾個客戶端,使用注冊表配置了WSUS,但是遲遲無法在控制台上看到這些客戶端。由於部分客戶端不在域中,無法使用組策略配置,就寫了一個簡單的批處理添加WSUS的服務器信息。
reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate /v WUServer /t REG_SZ /d http://wsusip:8530 /f
reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate /v WUStatusServer /t REG_SZ /d http://wsusip:8530 /f
reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /v UseWUServer /t REG_DWORD /d 1 /f
https://www.cnblogs.com/qishine/p/12486114.html
配置完成后,什么都不做,想讓客戶端直接到時候連接服務器。因為大規模部署的時候不太可能一個個人工確認。過了幾個小時后,依然沒有發現客戶端。於是想加快一下進度,在客戶端上運行wuauclt /detectnow wuauclt /reportnow來讓客戶端主動聯系服務器。然而,等了1個多小時依然沒有什么進展。
后來查了一些資料,發現wuauclt這個命令最多只能用到Win 7,對於Windows 10和Windows Server 2016之后的客戶端需要使用usoclient.exe。並且需要以管理員身份運行,可以先以管理員運行一個cmd窗口,然后輸入命令usoclient.exe startinteractivescan。經過測試,這個參數並不會有交互式界面出現。另外usoclient和wuauclt這個前輩一樣,隨便你輸入任何命令都是不會反饋任何結果的。不同的是usoclient已經不需要在參數前面加/了。對於usoclient.exe的參數並沒有官方說明,網上有一些流行的說法大家可以各自驗證。
startscan--開始查找更新
startdownload--開始下載更新
startinstall--安裝下載的更新
refreshsettings--刷新更改的配置
startinteractivescan--可能會出現交互式對話框顯示進度或錯誤
restartdevice--重啟計算機以完成更新
scaninstallwait--查找、下載、安裝更新的合並命令
resumeupdate--啟動時恢復安裝更新
同樣在高版本的Windows中,Windows Update的日志已經由ETW生成了。可以用powershell命令get-windowsupdatelog來過濾生成易讀的日志。運行get-windowsupdatelog后會在當前用戶的桌面上生成過濾后的日志。下次再運行的話,新日志會追加進去,可以有連貫的日志供排查問題
