Windows Server 2016에 업데이트를 설치하는 과정에서 특이한 문제를 겪었습니다. 서버는 WSUS 서버에서 업데이트를 받아 자동 설치를 시도했지만, 몇 퍼센트 진행된 상태에서 계속 멈춰 있는 것이었습니다. wuauserv 서비스 재시작, 서버 재부팅, WindowsUpdate.log 오류 분석 등을 모두 시도했지만 소용이 없었습니다.
증상: WUSA 설치가 '패키지 복사' 단계에서 무한 대기
Microsoft Update 카탈로그에서 누적 업데이트를 수동으로 내려받아 WUSA(Windows Update Standalone Installer)로 설치를 시도해 봤지만, 설치 프로그램이 매번 Copying packages to the Windows Update cache(업데이트 캐시에 패키지 복사) 단계에서 멈춰 버렸습니다. 업데이트 설치는 사실상 무한히 진행되지 않는 상태였습니다.
해결 방법: 로컬 Windows Update 캐시 초기화
이 문제는 로컬 Windows Update 캐시를 초기화하면 해결할 수 있었습니다. 관리자 권한 명령 프롬프트를 열고 아래 명령어를 차례로 실행해 관련 서비스를 중지합니다.
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
1. wuauserv 프로세스가 완전히 중지되었는지 확인
서비스를 중지한 후에도 wuauserv 프로세스가 멈춘 상태로 남아 있는 경우가 있으므로, 다음 PowerShell 코드로 프로세스 상태를 확인하는 것이 좋습니다.
$id = Get-WmiObject -Class Win32_Service -Filter "Name LIKE 'wuauserv'" | Select-Object -ExpandProperty ProcessId
$process = Get-Process -Id $id
프로세스가 아직 실행 중이라면 강제로 종료합니다.
$process | Stop-Process
2. 캐시 파일 삭제 및 서비스 재시작
이제 업데이트 캐시 관련 파일을 삭제하고 서비스를 다시 시작합니다.
del /f /q "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
del /f /s /q %SystemRoot%\SoftwareDistribution\*.*
del /f /s /q %SystemRoot%\system32\catroot2\*.*
del /f /q %SystemRoot%\WindowsUpdate.log
net start wuauserv
net start cryptSvc
net start bits
net start msiserver
결과 및 참고 사항
캐시를 정리한 뒤 업데이트 검색을 다시 실행하면, 이번에는 업데이트가 정상적으로 설치되는 것을 확인할 수 있습니다. 이 캐시 초기화 방법은 Windows 10, Windows Server 2019 등 다른 Windows 버전에서도 업데이트 설치가 멈출 때 동일하게 적용할 수 있는 효과적인 해결책입니다.
참고로, Windows Server 2016이 프록시 환경에서 업데이트를 내려받지 못하는 별도의 사례도 보고된 바 있습니다. 프록시를 사용하는 환경이라면 캐시 초기화와 함께 프록시 설정도 점검해 보시기 바랍니다.