이 가이드에서는 Windows 업그레이드 중 발생하는 오류 코드 0x4005(16389)를 해결하는 방법을 자세히 알아봅니다. 여러 사용자가 Windows 11/10으로 현재 위치 업그레이드(in-place upgrade)를 진행하는 도중 이 오류 코드를 만났다고 보고했습니다. 오류가 발생하면 "소프트웨어를 변경할 수 없습니다"라는 메시지와 함께 긴 오류 내용이 화면에 표시됩니다.

이 오류는 주로 SCCM(System Center Configuration Manager)에서 현재 위치 업그레이드를 수행할 때 나타납니다. SCCM은 운영 체제 배포와 원격 제어 기능을 제공해 현재 위치 업그레이드를 지원하며, 한 번에 여러 장치에 새 운영 체제를 배포하는 용도로도 활용할 수 있습니다.
SCCM에서 0x4005(16389) 오류는 Windows 11/10과 호환되지 않는 응용 프로그램이 여러 개 설치되어 있을 때 발생할 수 있습니다. 물론 그 외에도 다양한 원인이 이 업그레이드 오류를 유발할 수 있습니다. Windows 업그레이드 중 동일한 오류 코드를 겪고 있다면 이 글이 도움이 될 것입니다. 아래에서 실제로 효과가 있었던 검증된 해결 방법들을 하나씩 소개합니다.
Windows 업그레이드 시 0x4005(16389) 오류의 원인
이 오류 코드는 다양한 원인으로 발생할 수 있으며, 사용자 환경에 따라 원인이 다릅니다. Windows 업그레이드 시 오류 코드 0x4005(16389)를 유발하는 대표적인 시나리오는 다음과 같습니다.
- 장치 업그레이드에 필요한 디스크 공간 부족: 현재 위치 업그레이드를 수행할 공간이 부족하면 오류가 발생하므로, 필요한 공간을 확보한 뒤 다시 시도해야 합니다.
- 다른 Windows 에디션 사용: 현재 설치된 것과 다른 에디션으로 업그레이드를 시도하면 오류가 생길 수 있습니다.
- 서드파티 백신 프로그램: 백신이 업그레이드 과정을 위협으로 오판해 완료를 방해할 수 있습니다.
- 컴퓨터 설명 설정 명령 실패: 작업 순서(task sequence) 중 로컬 컴퓨터 설명을 설정하는 명령이 실패하면 이 오류 코드가 나타날 수 있습니다.
본인의 상황에 맞는 해결 방법을 아래 목록에서 골라 시도해 보세요.
Windows 11/10 업그레이드 시 오류 코드 0x4005(16389) 해결 방법
- 디스크 공간 확인
- 서드파티 백신 비활성화
- 동일한 Windows 에디션 사용
- 64비트 컴퓨터에서 프로그램을 32비트 프로세스로 제거
- 로컬 컴퓨터 설명 명령 변경
1. 디스크 공간 확인
Windows 업그레이드에 필요한 디스크 공간이 부족하면 이 오류가 발생할 수 있습니다. 디스크 공간 부족은 Windows 업데이트나 업그레이드 실패의 가장 흔한 원인 중 하나이므로, 먼저 충분한 여유 공간이 있는지 확인하세요.
Windows 11/10에서는 저장소 센스(Storage Sense) 기능이나 디스크 정리(Disk Cleanup) 유틸리티를 사용해 공간을 확보할 수 있습니다. 그 외에도 Cleanmgr+ 같은 정리 도구로 불필요한 파일을 삭제하거나, 중복 파일 찾기·삭제 프로그램을 활용해 여유 공간을 늘릴 수도 있습니다.
디스크 공간이 충분한데도 오류가 계속된다면 다음 해결 방법으로 넘어가세요.
2. 서드파티 백신 비활성화
PC에 서드파티 백신 소프트웨어가 설치되어 있다면, 업그레이드를 시도하기 전에 일시적으로 비활성화해 보세요. 백신 프로그램은 오탐(false positive)으로 인해 정상적인 작업까지 차단하는 경우가 많습니다. 업그레이드 과정과 관련된 작업을 위협으로 판단했다면 이 오류 코드가 나타날 수 있습니다. 백신을 끈 상태에서 현재 위치 업그레이드를 다시 진행하고 오류가 해결되는지 확인하세요.
3. 동일한 Windows 에디션 사용
시스템에 설치된 것과 다른 Windows 에디션으로 업그레이드를 시도하면 이 오류가 발생할 수 있습니다. 일부 사용자는 동일한 Windows 미디어를 선택함으로써 문제를 해결했다고 보고했습니다. 예를 들어, 현재 Windows Enterprise 에디션을 사용 중이라면 업그레이드할 때도 반드시 Windows Enterprise 미디어를 사용해야 합니다.
해당 사항이 없다면 목록의 다음 해결 방법을 시도해 보세요.
4. 64비트 컴퓨터에서 프로그램을 32비트 프로세스로 제거

이 방법은 .NET 배포에만 적용됩니다. 컴퓨터에 .NET Framework를 배포하는 중 오류가 발생했다면, 64비트 아키텍처 컴퓨터에서 프로그램이 32비트 프로세스로 실행되기 때문일 가능성이 있습니다. 이 경우 설치 관리자 속성의 체크박스를 활성화해 64비트 클라이언트에서 프로그램을 32비트 프로세스로 제거하도록 설정할 수 있습니다. 설정 절차는 다음과 같습니다.
- 먼저 배포 중인 .NET 설치 관리자 또는 배포 속성을 엽니다.
- 속성 창에서 [프로그램] 탭으로 이동합니다.
- [64비트 클라이언트에서 설치 및 제거 프로그램을 32비트 프로세스로 실행] 체크박스를 켭니다.
- [적용] > [확인]을 눌러 변경 사항을 저장한 뒤 .NET Framework를 다시 배포하고 오류가 해결되었는지 확인합니다.
해당 상황이 아니라면 다른 해결 방법을 시도해 보세요.
5. 로컬 컴퓨터 설명 명령 변경
업그레이드 작업 순서 중 로컬 컴퓨터 설명을 설정하는 명령이나 스크립트가 실패하거나 중단되면 이 오류 코드가 표시될 가능성이 높습니다. 해당된다면 명령 자체를 변경해 보세요. NET CONFIG 명령을 활용할 수 있습니다. 작업 순서에 [명령줄 실행(Run Command-Line)]을 추가하고 다음 명령을 입력합니다.
cmd /c net config Server /SRVCOMMENT:"%OSDComputerDescription%"
이 명령은 OSDComputerDescription 변수에 정의된 값으로 컴퓨터 설명을 설정합니다. 변수 이름은 필요에 따라 자유롭게 변경할 수 있습니다.
위의 모든 방법으로도 해결되지 않는다면 Configuration Manager를 사용한 현재 위치 업그레이드를 다시 시도해 보시기 바랍니다.
현재 위치 업그레이드(in-place upgrade) 수행 방법
현재 위치 업그레이드를 수행하려면 먼저 Microsoft 공식 웹사이트에서 Windows 10 설치 미디어를 다운로드해야 합니다. 이후 실행 파일을 구동하고 [지금 PC 업그레이드] 옵션을 선택하면 현재 위치 업그레이드가 시작됩니다. 화면에 표시되는 설치 안내에 따라 진행하면 됩니다.
이 가이드가 Windows 업그레이드 시 0x4005(16389) 오류를 해결하는 데 도움이 되기를 바랍니다.