Microsoft MVP성태의 닷넷 이야기
오류 유형: 312. 윈도우 10 TH2 (버전 1511) 업데이트가 안되는 경우 [링크 복사], [링크+제목 복사]
조회: 20818
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

윈도우 10 TH2 (버전 1511) 업데이트가 안되는 경우

"시작" / "Settings" 메뉴를 선택해 "Update & security" 항목을 들어가 보니 이번 윈도우 1511 업데이트가 다음과 같이 오류가 난 걸로 나왔습니다.

prepare_to_install_0.png

재시도하는 버튼을 눌렀더니, 다음과 같이 "Preparing to install updates"에서 더 이상 진행이 되질 않습니다.

prepare_to_install_1.png

실제로 정상적인 윈도우 업데이트 단계 중에도 "Preparing to install updates" 부분이 좀 오래 걸리긴 하지만, 문제가 발생해서 업데이트 진행이 안되는 경우에는 해당 "Settings" 윈도우 창이 먹통이 되는 것으로 인지할 수 있습니다. 즉, 정상적인 윈도우 업데이트인 경우에는 해당 창을 끌거나 하는 것이 가능하지만 문제가 발생해 먹통이 된 경우에는 아무리 오래 기다려도 그 이상 진행을 하지 않습니다.

왜 이런 걸까요? ^^;




제어판의 "Troubleshooting" / "View history" 링크로 들어가면 다음과 같이 실패 이력이 남고,

prepare_to_install_2.png

우클릭해서 "View details"를 보면 이렇게 오류 코드가 "0x80070057"로 나옵니다. (이건 별로 도움이 안되는 오류 코드입니다.)

prepare_to_install_3.png

실제 오류 원인은 로그에 나오는데요. 이번 윈도우 업데이트를 시작하면 "C:\$WINDOWS.~BT\Sources\Panther" 폴더 하위에 setupact.log라는 이름으로 진행 관련한 로그가 남습니다.

이 로그를 보다가 다음의 오류를 발견할 수 있었는데,

2015-11-19 16:43:29, Info                  SP     DU disk space checkpoint after download:
2015-11-19 16:43:29, Info                  SP       Available: 2787401728
2015-11-19 16:43:29, Info                  SP       Needed by install of updates: 2106018541
2015-11-19 16:43:29, Info                  SP       Needed by setup: 597688320
2015-11-19 16:43:29, Info                  SP     Reserved space (2106018541) not accurate; will perform additional buffer check.
2015-11-19 16:43:29, Warning               SP     CDownloadDUUpdates::DoExecuteInternal: Total space estimate leaves low free space; skipping installation.
2015-11-19 16:43:29, Error                        CDiagnosticsHelper::SetSQMDatapoint: Attempting to set a datapoint in an invalid SQM session
2015-11-19 16:43:29, Error                 SP     CSetupPlatform::DownloadDynamicUpdates: Failed to download updates. Error: 0x80070070
2015-11-19 16:43:29, Error                 MOUPG  DUImage: Failed to execute GDR search and download [0x80070070]
2015-11-19 16:43:29, Info                  MOUPG  DUImage: Searching for driver updates...
2015-11-19 16:43:29, Info                         SPGetWIMImageInfo: No software hive in WIM image index 1; assuming this is data image.
2015-11-19 16:43:30, Info                  MOUPG  Action progress: [22%]
2015-11-19 16:43:30, Info                  MOUPG  Task progress: [44%]
2015-11-19 16:43:36, Info                  SP     Client application ID = SetupHost.Exe

여기서 "CSetupPlatform::DownloadDynamicUpdates: Failed to download updates. Error: 0x80070070"의 오류 코드인 0x80070070은 디스크 부족을 의미합니다.

Windows Update error: "Windows Update has encountered a problem and cannot display the requested page. 0X80070070."
; http://blogs.technet.com/b/sus/archive/2008/05/28/windows-update-error-windows-update-has-encountered-a-problem-and-cannot-display-the-requested-page-0x80070070.aspx

그렇습니다. C 드라이버의 용량이 7GB 정도 있었는데 이걸로는 부족했던 것입니다. 아무리 그렇다고는 하지만, 마이크로소프트가 너무 불친절하군요. 그럼 윈도우 업데이트 중에 디스크 부족이라고 메시지 창 하나만 띄워주었어도 이런 술래잡기는 없었을 텐데. ^^




자, 이제 디스크 부족이라는 것을 알았으니 선택 사항이 2가지가 있습니다. 하나는 가장 간단하게 C 드라이버의 여유 공간을 10GB 정도로 늘려주는 것입니다. 안 쓰는 프로그램을 삭제하든... 갖은 방법을 동원해서 해주시면 됩니다.

그게 아니라면 윈도우 업데이트가 아닌 수작업으로 업데이트를 진행하면 됩니다. 마이크로소프트는 TH2 업데이트를 ISO 파일로 다음의 사이트에서 제공하고 있는데,

Windows 10 Tech Bench Upgrade Program
; https://www.microsoft.com/en-us/software-download/techbench 

위의 화면 하단에서 자신에게 맞는 윈도우 10 버전과 언어 유형을 선택해 주면 그에 해당하는 iso 파일을 다운로드받게 됩니다. 제 경우에는 "Win10_1511_English_x64.iso"이었는데요.

다운로드 받은 후 ISO 파일을 마우스 우클릭해 "Mount" 메뉴를 실행해 주면 가상 CD-ROM으로 연결되고 거기 있는 setup.exe를 실행하면 됩니다.

이렇게 업데이트를 시도하면 이번에는 친절하게 디스크 부족이었다고 원인을 밝혀주고 C 드라이브를 정리하거나, 아니면 10GB 여유 공간이 있는 다른 하드 디스크를 선택하라고 일러줍니다.

prepare_to_install_4.png

C 드라이브를 10GB 확보할 수 있었으면 ISO 다운로드 받아 setup.exe 실행할 수고없이 "Settings"의 윈도우 업데이트 창에서 끝냈을 것입니다. 여기까지 온 것은 그게 쉽지 않은 때문이고 "Choose another drive or attach an external drive with 10.0GB available" 메뉴의 혜택을 받기 위해서였던 것이지요. ^^

암튼 그 링크를 선택하면 바로 하단에 드라이브 목록이 뜨고 제 경우에는 330GB 여유가 있는 외장 하드를 지정했습니다.

prepare_to_install_5.png

그리곤 우측 하단의 "Refresh" 버튼을 누르고 설치 작업을 시작해 주시면 됩니다. 나머지는 이제 기다리는 여유만 있으면 됩니다.




설치가 완료되었으면, 이제 탐색기를 실행해 "C" 드라이브를 선택하고 마우스 우클릭을 해 "Properties" / "Disk Cleanup" 버튼을 누르고 뜨는 창에서 좌측 하단의 "Clean up system files" 버튼을 누르면 다음과 같이 이전 윈도우 설치 본을 제거해 C 드라이브 하드 공간을 업데이트 설치 이전보다 더 여유롭게 만들 수 있습니다. (덕분에 제 경우에 설치전 8GB 이하였는데 지금은 19GB 정도의 여유 공간이 남았습니다.)

prepare_to_install_6.png

업데이트로 인해 어떤 것이 좋아졌느냐고 물으신다면, 제 경우에 다음과 같은 것들을 꼽을 수 있습니다.


그 외에는 업데이트 설치 전과 잘 모르겠습니다. 전반적으로 안정화가 이뤄졌을 거라는 추측 뿐. ^^

참고로, 내부적으로는 인텔의 신형 Skylake CPU에서만 제공되는 보안도 적용되었다고 합니다.

Windows 10 Threshold 2에 구현된 SGX
; http://blog.naver.com/gloryo/220542548735

CPU | 인텔, 10월부터 SGX 기술이 탑재된 업데이트된 스카이레이크 프로세서 공급 
; http://www.hwbattle.com/bbs/board.php?bo_table=news&wr_id=9958




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/18/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2019-03-08 12시11분
SetupDiag
; https://docs.microsoft.com/en-us/windows/deployment/upgrade/setupdiag

SetupDiag is a standalone diagnostic tool that can be used to obtain details about why a Windows 10 upgrade was unsuccessful.
정성태

... 16  17  18  19  20  21  22  [23]  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13055정성태5/11/20229402.NET Framework: 2008. C# - async/await 그리고 스레드 (1) MyTask로 재현 [11]파일 다운로드1
13054정성태5/11/20226880.NET Framework: 2007. C# - 10진수 숫자를 담은 문자열을 숫자로 변환하는 방법 [11]파일 다운로드1
13053정성태5/10/20226533.NET Framework: 2006. C# - GC.KeepAlive 메서드의 역할
13052정성태5/9/20226524.NET Framework: 2005. C# - 생성한 참조 개체가 언제 GC의 정리 대상이 될까요?
13051정성태5/8/20226491.NET Framework: 2004. C# XingAPI - ACF 검색 결과로 구한 CSV 파일을 통해 퀀트 종목 찾기파일 다운로드1
13050정성태5/6/20226539.NET Framework: 2003. C# - COM 개체의 이벤트 핸들러에서 발생하는 예외에 대한 CLR의 특별 대우파일 다운로드1
13049정성태5/6/20225516오류 유형: 811. GoLand - Error: Cannot find package
13048정성태5/6/20226643오류 유형: 810. "ASUS TUF GAMING B550M-PLUS (WI-FI)" 모델에서 블루투스 장치가 인식이 안 되는 문제
13047정성태5/6/20226618오류 유형: 809. Speech Recognition could not start
13046정성태5/5/20226929.NET Framework: 2002. C# XingAPI - ACF 파일을 이용한 퀀트 종목 찾기(t1857)
13045정성태5/5/20226976.NET Framework: 2001. C# XingAPI - 주식 종목에 따른 PBR, PER, ROE 구하는 방법(t3341 예제)
13044정성태5/4/20226425오류 유형: 808. error : clang++ exited with code 127
13043정성태5/3/20226091오류 유형: 807. C# - 닷넷 응용 프로그램에서 Informix DB 사용 시 오류 메시지 정리
13042정성태5/3/20226456.NET Framework: 2000. C# - 닷넷 응용 프로그램에서 Informix DB 사용 방법파일 다운로드1
13041정성태4/28/20226735개발 환경 구성: 642. Informix 데이터베이스 docker 환경 구성
13040정성태4/27/20227241VC++: 156. 비주얼 스튜디오 - Linux C/C++ 프로젝트에서 openssl 링크하는 방법
13039정성태4/27/20228051.NET Framework: 1999. C# - Playwright를 이용한 간단한 브라우저 제어 실습
13038정성태4/26/20225923오류 유형: 806. twine 실행 시 ConfigParser.ParsingError: File contains parsing errors: /root/.pypirc
13037정성태4/25/20226244.NET Framework: 1998. Azure Functions를 사용한 간단한 실습
13036정성태4/24/20226997.NET Framework: 1997. C# - nano 시간을 가져오는 방법 [2]
13035정성태4/22/20227567Windows: 204. Windows 10부터 바뀐 QueryPerformanceFrequency, QueryPerformanceCounter
13034정성태4/21/20226943.NET Framework: 1996. C# XingAPI - 주식 종목에 따른 PBR, PER, ROE, ROA 구하는 방법(t3320, t8430 예제)파일 다운로드1
13033정성태4/18/20227564.NET Framework: 1195. C# - Thread.Yield와 Thread.Sleep(0)의 차이점(?)
13032정성태4/17/20227283오류 유형: 805. Github의 50MB 파일 크기 제한 - warning: GH001: Large files detected. You may want to try Git Large File Storage
13031정성태4/15/20226802.NET Framework: 1194. C# - IdealProcessor와 ProcessorAffinity의 차이점
13030정성태4/15/20226492오류 유형: 804. 정규 표현식 오류 - Quantifier {x,y} following nothing.
... 16  17  18  19  20  21  22  [23]  24  25  26  27  28  29  30  ...