본문으로 건너뛰기
오류사전오류 코드 해결 사전

가이드

윈도우 업데이트 오류 공통 절차 (문제 해결사·구성 요소 초기화)

확인일 2026.09.04

Windows 업데이트를 설치하거나 검색하다가 0x8024…, 0x8007…, 0x800F… 같은 코드가 뜨면 코드별 페이지(예: 0x80070005, 0x800F081F)에 그 코드의 뜻과 해결 순서가 있습니다. 그런데 Microsoft 문서는 어느 코드든 먼저 해 보라는 공통 단계를 따로 정해 두었습니다. 이 가이드는 그 공통 단계를 원문 순서대로 정리한 것입니다. 코드 페이지에서 “공통 절차”로 안내받아 왔다면 여기서 문제 해결사와 점검 목록을 먼저 끝내고, 그래도 같은 코드가 반복될 때 코드 페이지의 개별 단계로 돌아가세요. 코드를 아직 못 찾았다면 윈도우 업데이트 오류 허브에서 검색할 수 있습니다.

먼저 할 세 가지

Microsoft의 ‘Windows Update 문제 해결’ 문서는 업데이트에 문제가 생기면 다음 세 가지부터 시작하라고 안내합니다. 원문은 Windows 10 기준으로 쓰였습니다.

  1. 기본 제공 Windows 업데이트 문제 해결사를 실행하세요. 경로는 설정 > 업데이트 및 보안 > 문제 해결 > Windows 업데이트입니다. 원문은 이 도구가 상황을 분석해 필요한 구성 요소를 스스로 재설정한다고 설명하므로, 뒤에 나오는 수동 초기화보다 이쪽이 먼저입니다.
  2. Microsoft 업데이트 카탈로그에서 자기 Windows 버전에 맞는 최신 서비스 스택 업데이트(SSU)를 설치하세요. 원문은 서비스 스택 업데이트가 무엇인지는 별도 문서로 안내합니다.
  3. 최신 누적 업데이트와 롤업 업데이트가 설치되어 있는지 확인하세요. 원문은 Windows 버전별 업데이트 기록 페이지(Windows 10 2004, 1909, 1903, 1809, 1803, 1709, 1703, Windows 8.1, Windows 7 SP1 등)에서 현재 상태와 최신 항목을 대조하라고 안내합니다.

고급 사용자는 Windows 업데이트가 남기는 로그를 추가로 볼 수 있는데, 로그는 아래 ‘로그 확인’ 항목에 따로 정리했습니다.

점검 목록 5단계

‘Windows Update 문제 해결 지침’ 문서는 대부분의 경우 업데이트 기능을 되살리는 초기 절차를 다섯 단계로 제시합니다. 순서대로 진행하세요.

  1. 지원되는 Windows 버전이라면 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행하세요. 이 명령의 뜻과 뒤이어 실행할 SFC는 SFC / DISM 사용법에 정리되어 있습니다.
    Dism /online /cleanup-image /restorehealth
  2. 컴퓨터를 다시 시작하세요. 이전 업데이트 뒤에 다시 시작하지 않았다면, 보류된 작업이 먼저 끝나야 새 업데이트를 적용할 수 있습니다.
  3. 최신 서비스 스택 업데이트를 설치하세요. 원문은 최신 누적 업데이트에 필요한 서비스 스택을 업데이트 기록에서 확인하라고 안내합니다.
  4. Windows 파일 손상을 점검하고 고치세요. 이 단계의 원문은 DISM 문서로 이어지며, 역시 SFC / DISM 사용법을 따르면 됩니다.
  5. 업데이트 패키지를 직접 내려받아 수동으로 설치하세요. 원문이 적어 둔 순서는 다음과 같습니다.
    1. Microsoft 업데이트 카탈로그를 엽니다.
    2. 검색 상자에 받으려는 업데이트 번호(KB 번호)를 입력하고 검색을 선택합니다.
    3. 결과에서 자기 운영 체제에 맞는 항목을 찾아 그 옆의 추가를 선택합니다.
    4. 바구니 보기를 선택한 뒤 다운로드를 선택합니다.
    5. 저장 위치를 고르려면 찾아보기를 선택하고 계속을 선택합니다.
    6. 다운로드가 끝나면 닫기를 선택합니다.
    7. 저장 위치로 가서 내려받은 패키지를 두 번 클릭해 설치합니다.

    원문은 Windows 업데이트 에이전트의 적용 가능 여부 검사를 건너뛰어 설치를 더 진행시키려면 관리자 권한 명령 프롬프트에서 다음 명령을 쓸 수 있다고 덧붙입니다. <path_to_package> 자리에 내려받은 패키지 경로를 넣습니다.

    Dism /online /add-package /packagepath:<path_to_package>

업데이트 검색에서 멈춰 있을 때

설정 앱의 업데이트 화면은 업데이트 오케스트레이터 서비스와 통신하고, 그 서비스가 다시 Windows 업데이트 서비스와 통신합니다. 이 서비스들이 예기치 않게 멈추면 검색 화면이 그대로 굳어 보일 수 있습니다. 원문이 안내하는 확인 순서는 두 가지입니다.

  1. 설정 앱을 닫았다가 다시 여세요.
  2. services.msc(서비스)를 열어 Update Orchestrator 서비스와 Windows Update 서비스가 실행 중인지 확인하세요.

다운로드가 0%에서 멈출 때 (0x800706D9)

업데이트 다운로드가 0%에서 진행되지 않고 로그에 0x800706D9 오류가 남는 경우, 원문은 서비스(services.msc)에서 Windows Defender 방화벽 서비스가 사용 설정되어 있는지 확인하라고 안내합니다. 원문은 이 현상이 특히 BITS가 기본 다운로드 관리자인 Windows Server 2016에서 나타난다고 적고, 방화벽 서비스를 중지하는 것은 Microsoft가 지원하지 않는 구성이라고 못 박습니다. 방화벽을 끄는 단계가 아니라 켜져 있는지 확인하는 단계입니다.

회사망·프록시 환경일 때

Windows 업데이트는 WinHTTP로 부분 범위(HTTP RANGE) 요청을 보내 업데이트를 내려받습니다. 그래서 네트워크의 프록시 서버가 RANGE 요청을 지원해야 하고, 프록시가 Internet Explorer(사용자 수준)에만 설정되고 WinHTTP(시스템 수준)에는 없으면 Windows 업데이트 연결이 실패합니다. 원문이 제시하는 해결은 다음 명령으로 WinHTTP에 프록시를 지정하는 것입니다. ProxyServerName:PortNumber 자리에 실제 프록시 주소와 포트를 넣습니다.

netsh winhttp set proxy ProxyServerName:PortNumber

Internet Explorer의 프록시 설정을 그대로 가져오는 명령도 원문에 있습니다.

netsh winhttp import proxy source=ie

프록시를 거친 다운로드가 0x80d05001(DO_E_HTTP_BLOCKSIZE_MISMATCH)로 실패하거나 다운로드 중 CPU 사용량이 치솟으면, 프록시 설정에서 HTTP RANGE 요청을 허용하는지 확인하라는 것이 원문의 안내입니다. RANGE 요청을 허용할 수 없으면 델타 패치가 동작하지 않아 필요한 것보다 많은 내용을 내려받게 됩니다. 이 항목은 집에서 쓰는 PC보다 회사 관리망에 해당하므로, 개인 PC라면 건너뛰어도 됩니다.

업데이트 구성 요소 수동 초기화

‘Windows Update 추가 자료’ 문서는 구성 요소 초기화 방법을 묻는 질문에 먼저 Windows 업데이트 문제 해결사, 그다음 Microsoft 지원 페이지의 ‘문제 해결’과 ‘Windows 업데이트 오류 해결’ 절차를 권하고, 그래도 안 될 때의 수동 절차를 적어 두었습니다. 아래 순서와 명령어는 원문 그대로입니다.

관리자 권한이 필요한 단계입니다. 서비스를 멈추고 파일을 지우며 시스템 DLL을 다시 등록합니다. 4단계(폴더 이름 바꾸기와 sc.exe sdset)는 첫 시도에는 건너뛰고, 나머지를 모두 해도 해결되지 않을 때만 실행하라는 것이 원문의 지시입니다. 특히 sc.exe sdset 명령은 BITS와 Windows Update 서비스의 기존 보안 설명자(ACL)를 기본값으로 덮어씁니다.
  1. 명령 프롬프트를 여세요. 원문은 시작 > 실행에서 cmd를 입력해 Enter를 누르는 경로를 적어 두었습니다.
  2. BITS 서비스, Windows 업데이트 서비스, 암호화 서비스를 중지하세요. 한 줄씩 입력하고 Enter를 누릅니다.
    net stop bits
    net stop wuauserv
    net stop cryptsvc
  3. qmgr*.dat 파일을 삭제하세요.
    Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
  4. 이 단계는 첫 시도라면 건너뛰고 5단계로 가세요. 다른 단계를 모두 마쳐도 해결되지 않았을 때만 돌아와서 실행합니다. 원문은 이 단계가 문제 해결사의 ‘적극’ 모드가 하는 일과 같다고 설명합니다.
    1. 다음 세 폴더의 이름을 *.BAK로 바꾸세요. SoftwareDistribution 아래의 DataStore와 Download, System32 아래의 catroot2입니다. 삭제가 아니라 이름 변경입니다.
      Ren %Systemroot%\SoftwareDistribution\DataStore DataStore.bak
      Ren %Systemroot%\SoftwareDistribution\Download Download.bak
      Ren %Systemroot%\System32\catroot2 catroot2.bak
    2. BITS 서비스와 Windows 업데이트 서비스의 보안 설명자를 기본값으로 되돌리세요. 원문은 다른 초기화 단계로 해결되지 않은 경우가 아니면 이 명령을 건너뛰라고 강조합니다.
      sc.exe sdset bits D:(A;CI;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)
      sc.exe sdset wuauserv D:(A;;CCLCSWRPLORC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;SY)
  5. System32 폴더로 이동하세요.
    cd /d %windir%\system32
  6. BITS 파일과 Windows 업데이트 파일을 다시 등록하세요. 한 줄씩 입력하고 Enter를 누릅니다.
    regsvr32.exe atl.dll
    regsvr32.exe urlmon.dll
    regsvr32.exe mshtml.dll
    regsvr32.exe shdocvw.dll
    regsvr32.exe browseui.dll
    regsvr32.exe jscript.dll
    regsvr32.exe vbscript.dll
    regsvr32.exe scrrun.dll
    regsvr32.exe msxml.dll
    regsvr32.exe msxml3.dll
    regsvr32.exe msxml6.dll
    regsvr32.exe actxprxy.dll
    regsvr32.exe softpub.dll
    regsvr32.exe wintrust.dll
    regsvr32.exe dssenh.dll
    regsvr32.exe rsaenh.dll
    regsvr32.exe gpkcsp.dll
    regsvr32.exe sccbase.dll
    regsvr32.exe slbcsp.dll
    regsvr32.exe cryptdlg.dll
    regsvr32.exe oleaut32.dll
    regsvr32.exe ole32.dll
    regsvr32.exe shell32.dll
    regsvr32.exe initpki.dll
    regsvr32.exe wuapi.dll
    regsvr32.exe wuaueng.dll
    regsvr32.exe wuaueng1.dll
    regsvr32.exe wucltui.dll
    regsvr32.exe wups.dll
    regsvr32.exe wups2.dll
    regsvr32.exe wuweb.dll
    regsvr32.exe qmgr.dll
    regsvr32.exe qmgrprxy.dll
    regsvr32.exe wucltux.dll
    regsvr32.exe muweb.dll
    regsvr32.exe wuwebv.dll
  7. Winsock을 초기화하세요.
    netsh winsock reset
  8. Windows XP 또는 Windows Server 2003에서만 프록시 설정을 다음 명령으로 지정하세요. 그 밖의 버전은 건너뜁니다.
    proxycfg.exe -d
  9. BITS 서비스, Windows 업데이트 서비스, 암호화 서비스를 다시 시작하세요.
    net start bits
    net start wuauserv
    net start cryptsvc
  10. Windows Vista 또는 Windows Server 2008에서만 BITS 대기열을 비우세요. 그 밖의 버전은 건너뜁니다.
    bitsadmin.exe /reset /allusers

같은 문서에는 더 짧은 방법도 있습니다. 다른 방법이 모두 실패했을 때 관리자 권한 명령 프롬프트에서 Windows 업데이트 에이전트를 재설정하는 세 줄로, 서비스를 멈추고 SoftwareDistribution 폴더를 지운 뒤 서비스를 다시 시작합니다.

net stop wuauserv
rd /s /q %systemroot%\SoftwareDistribution
net start wuauserv

DISM·SFC로 넘어가는 조건

‘Windows Update 손상 및 설치 실패 해결’ 문서는 업데이트 설치 실패가 손상 오류 때문일 수 있다며, Setup 이벤트 로그에서 오류를 확인하고 다음 코드가 보이면 DISM으로 손상을 고치라고 안내합니다. 아래 코드 중 하나가 화면이나 로그에 있다면 SFC / DISM 사용법으로 넘어가세요.

  • 0x80070002 ERROR_FILE_NOT_FOUND, 0x8007000D ERROR_INVALID_DATA(코드 페이지), 0x80070057 ERROR_INVALID_PARAMETER, 0x80070246 ERROR_ILLEGAL_CHARACTER, 0x800705B9 ERROR_XML_PARSE_ERROR, 0x80070490 ERROR_NOT_FOUND(코드 페이지)
  • 0x800f0831 CBS_E_STORE_CORRUPTION(코드 페이지), 0x800F081F CBS_E_SOURCE_MISSING(코드 페이지), 0x800f0906 CBS_E_DOWNLOAD_FAILURE
  • 0x80073712 ERROR_SXS_COMPONENT_STORE_CORRUPT, 0x800736CC ERROR_SXS_FILE_HASH_MISMATCH, 0x8007370D, 0x8007370B, 0x8007370A(ERROR_SXS_… 식별자 오류), 0x8007371B ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE(코드 페이지)
  • 0x800B0100 TRUST_E_NOSIGNATURE, 0x800B0101 CERT_E_EXPIRED, 0x80092003 CRYPT_E_FILE_ERROR
  • 0x800f0984, 0x800f0986, 0x800f0982(PSFX_E_… 구성 요소 대응 오류), 0x8024002E WU_E_WU_DISABLED

원문의 예를 빌리면, 시스템 파일이 손상되어 업데이트가 설치되지 않는 경우가 여기에 해당하며 DISM이 그런 손상 일부를 고칠 수 있습니다. 코드가 위 목록에 없더라도 앞의 점검 목록 1단계와 4단계가 DISM과 파일 손상 점검이므로, 결국 같은 가이드를 한 번은 거치게 됩니다.

로그 확인

원문이 언급하는 로그는 세 곳입니다.

  • Windows 업데이트 로그(WindowsUpdate.log): 고급 사용자를 위한 추가 조사 자료입니다. 원문은 기능 업데이트만 제공되지 않는 사례에서 이 로그에 0x80070426(ERROR_SERVICE_NOT_ACTIVE, 서비스가 시작되지 않음)이 남는 것을 예로 들고, 이때 Microsoft 계정 로그인 도우미(MSA, wlidsvc) 서비스의 시작 유형을 기본값인 ‘수동’으로 되돌리라고 안내합니다. 로그에 코드가 [80070426]처럼 0x 없이 적히기도 하니, 검색할 때는 앞에 0x를 붙여도 되고 빼도 됩니다(오류 코드 검색하는 법).
  • Setup 이벤트 로그: 손상 오류 코드를 확인하는 곳입니다. 위 ‘DISM·SFC로 넘어가는 조건’ 표의 코드가 여기서 보입니다.
  • DISM 로그(CBS.log): DISM이 찾았거나 고친 문제가 %windir%\Logs\CBS\CBS.log와 CBS.persist.log에 남습니다. %windir%는 Windows가 설치된 폴더로, 보통 C:\Windows입니다. 읽는 방법은 SFC / DISM 사용법에 있습니다.

한 가지 더, 원문은 조치가 필요 없는 일시적 오류 두 개를 따로 적어 두었습니다. 0x248001(WU_S_SEARCH_LOAD_SHEDDING, 검색은 끝났지만 일부 서비스가 부하를 줄이는 중)과 0x8024402d(WU_E_PT_LOAD_SHEDDING, 서버가 부하를 줄이는 중)는 서비스가 일시적으로 붐비거나 네트워크가 혼잡할 때 나오며, 장치가 나중에 다시 시도하므로 사용자가 할 일이 없습니다.

‘업데이트를 이 컴퓨터에 적용할 수 없다’고 나올 때

이 메시지의 원인으로 원문이 드는 것은 네 가지이고, 확인 순서도 정해져 있습니다.

  1. 업데이트가 대체(superseded)되었는지: 설치하려는 패키지보다 새 버전의 구성 요소가 이미 시스템에 있으면 이 오류가 납니다. 패키지가 더 새로운 파일을 담고 있는지, 또는 카탈로그에서 다른 새 패키지로 대체되었는지 확인하세요.
  2. 이미 설치되었는지: 같은 내용을 담은 다른 업데이트로 먼저 설치되었을 수 있습니다.
  3. Windows 버전과 프로세서 아키텍처가 맞는지: 업데이트 문서의 ‘적용 대상’ 절과 대조하세요. 예를 들어 x86용 업데이트는 x64 Windows에 설치할 수 없습니다.
  4. 필수 구성 요소 업데이트가 설치되었는지: 패키지 관련 문서에 적힌 선행 업데이트를 확인하세요. 원문은 Windows PowerShell에서 Get-HotFix 명령에 KB 번호를 주어 설치 여부를 확인하는 방법을 제시하며, 설치되어 있으면 InstalledOn 항목에 설치 날짜가 나옵니다.

그래도 안 될 때

원문이 안내하는 다음 경로는 세 갈래입니다. 첫째, Microsoft 지원에 문의할 때는 배포 관련 문제용 TSS 도구로 정보를 모아 두라고 합니다. 둘째, 각 문서 상단에는 일반적인 Windows 업데이트 문제를 찾아 주는 가상 에이전트 링크가 있습니다. 셋째, 가정 사용자를 위한 Microsoft 지원 페이지로 Windows 업데이트 문제 해결사, Windows 10 업데이트 문제 해결, Windows 업데이트 오류 해결이 있습니다. 회사나 학교 PC라면 사정이 다릅니다. 원문은 장치가 WSUS 서버의 관리를 받거나 배포 그룹에 속해 있으면 관리자가 의도적으로 배포 속도를 늦추어 최신 업데이트가 제공되지 않을 수 있다고 설명하므로, 이 경우에는 IT 관리자에게 먼저 문의하는 것이 맞습니다. 특정 코드가 계속 반복된다면 윈도우 업데이트 오류 허브에서 그 코드 페이지를 찾아 개별 단계를 따르세요.

출처: Windows Update issues troubleshooting, Windows Update troubleshooting guidance, Fix Windows Update corruptions and installation failures, Windows Update – additional resources (Microsoft Learn, CC BY 4.0), 2026-09-03 확인. 문장은 오류사전이 다시 쓴 것이고 명령어는 원문 그대로입니다.