Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

윈도우 10 Version 1709 (OS Build 16299.64) 업그레이드 시 발생한 문제 2가지

기존 "Version 1703 (OS Build 15063.674)" 빌드에서 오늘 "Version 1709 (OS Build 16299.64)" 버전으로 업그레이드를 했습니다. 이 버전부터, 드디어 "Windows Subsystem for Linux"가 베타 딱지를 떼게 되는데, 덕분에 Linux 관련 응용 프로그램 개발이 좀 더 자연스럽게 통합이 됩니다. 이에 대해서는 다음의 글을 참고하세요. ^^

Windows 10으로 시작하는 Java 개발
; https://medium.com/@rkttu/start-java-dev-with-win-10-402cb91126fd

그런데, 업그레이드 후 2가지 문제가 발생했습니다.

하나는, NVIDIA GTX960 그래픽 카드가 인식은 되는데 정상적으로 드라이버가 설치되지 않습니다. NVidia 측에서 최신 드라이버를 설치하려 해도 다음과 같은 오류 창이 떨어질 뿐입니다.

[그림 출처: https://www.custompcguide.net/2-methods-to-fix-nvidia-installer-failed-issue-for-geforce-video-cards/]
winupdate_16299_0.png

NVIDIA Installer failed

윈도우의 장치 관리자를 보면 다음과 같이 "Video Controller (VGA Compatible)"라고 나오는데,

winupdate_16299_1.png

저 항목을 우 클릭해 "Update driver" 메뉴를 통해 다운로드 한 NVidia display driver를 지정해도 다음과 같은 식의 오류와 함께 진행이 안됩니다.

NVIDIA Display settings are not available.
You are not currently using a display attached to an NVIDIA GPU.

재미있는 것은, 다음의 페이지를 이용해 확인을 하면 분명히 GTX960으로 인식은 된다는 점입니다.

http://www.nvidia.com/Download/Scan.aspx

Product Current
Installed Driver Recommended
Update 
GeForce GTX 960 -- GeForce Game Ready Driver
Version: 388.31  WHQL
Release Date: 15.11.2017 

실패한 드라이버 설치 시의 오류 로그를 보면 다음과 같은 항목이 있는데, 딱히 어떤 조치를 취해야 할지 알 수가 없습니다.

C:\NvidiaLogging\LOG.setup.exe.log

     15.982 |    ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0x80070002 - The system cannot find the file specified.; File: InstallationStepper.cpp; Line: 769; Extension failed during call toAnalyze} - going to fail state. 

     20.758 |    ERROR: [NVI2.NVInstaller] 240@CNVInstaller::PerformSteps : Installation failed with error Exception {0x80070002 - The system cannot find the file specified.; File: SimpleThread.h; Line: 228}. 

웹 상에서 여러 개를 검색했는데, 모두 실패했고 유일하게 다음의 글에 있는 도구를 이용해 해결할 수 있었습니다.

Wagnard Tools (DDU,GMP,TDR Manipulator, *new* CPU Core Analyzer)-(Updated 11/01/2017) 
; https://forums.geforce.com/default/topic/550192/geforce-drivers/wagnard-tools-ddu-gmp-tdr-manupulator-updated-02-19-2015-/post/3846165/#3846165

제가 원래 ^^; 신뢰할 수 없는 사이트에서 뭔가 다운로드하는 것을 싫어하지만... 이번 경우는 어쩔 수 없었습니다. 그래서 DDU 프로그램을 다운로드하고,

Display Driver Uninstaller (DDU) / Cleaner made for Display Drivers.(NVIDIA/AMD/INTEL)
; https://www.wagnardsoft.com/forums/viewtopic.php?f=5&t=925
; https://www.wagnardsoft.com/DDU/download/DDU%20v17.0.7.9.exe

윈도우를 안전 모드로 부팅한 후, DDU를 실행해 "Clean and restart" 메뉴를 실행했습니다. 그런 다음 다시 재부팅되고 이후 NVidia 설치 파일을 실행했더니 이번에는 "NVIDIA Installer failed" 메시지 없이 잘 설치가 진행되었습니다.




두 번째 문제는 윈도우 업그레이드 이후 새롭게 적용된 Hyper-V가 무조건 생성한 "Default Switch"로 인한 네트워크 오작동입니다.

아래의 그림에서 기존에 설정했던 Hyper-V의 인터넷 가능한 네트워크 스위치 이름은 vpc-switch였습니다. 그리고 그 아래에 강제로 생성된 "Default Switch"가 있는데 재미있는 것은 네트워크 어댑터 설정 화면에서 "vpc-switch"는 삭제되었고 "Default Switch"가 대신 자리 잡고 있다는 것입니다.

winupdate_16299_2.png

즉, vpc-switch가 살아 있었다면 아무런 문제가 없었을 텐데 그것이 삭제되면서 인터넷이 안되는 문제가 발생합니다. 또는, "Default Switch"가 인터넷 가능하도록 설정되었다면 문제가 되지 않을 수 있는데 이상하게도 IP가 다음과 같은 식으로 잡혀 있었습니다.

IP: 172.21.172.33
Subnet: 255.255.255.240

(IP를 변경하면 되겠지만) 그대로 두고 Hyper-V의 switch 관리자에서 기존 vpc-switch를 삭제 후 다시 생성하는 것으로 해결을 했습니다.




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

[연관 글]






[최초 등록일: ]
[최종 수정일: 11/17/2017]

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

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12125정성태1/24/20208565VS.NET IDE: 141. IDE0019 - Use pattern matching
12124정성태1/23/202010395VS.NET IDE: 140. IDE1006 - Naming rule violation: These words must begin with upper case characters: ...
12123정성태1/23/202011860웹: 39. Google Analytics - gtag 함수를 이용해 페이지 URL 수정 및 별도의 이벤트 생성 방법 [2]
12122정성태1/20/20208857.NET Framework: 879. C/C++의 UNREFERENCED_PARAMETER 매크로를 C#에서 우회하는 방법(IDE0060 - Remove unused parameter '...')파일 다운로드1
12121정성태1/20/20209409VS.NET IDE: 139. Visual Studio - Error List: "Could not find schema information for the ..."파일 다운로드1
12120정성태1/19/202010849.NET Framework: 878. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 네 번째 이야기(IL 코드로 직접 구현)파일 다운로드1
12119정성태1/17/202010895디버깅 기술: 160. Windbg 확장 DLL 만들기 (3) - C#으로 만드는 방법
12118정성태1/17/202011504개발 환경 구성: 466. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 세 번째 이야기 [1]
12117정성태1/15/202010532디버깅 기술: 159. C# - 디버깅 중인 프로세스를 강제로 다른 디버거에서 연결하는 방법파일 다운로드1
12116정성태1/15/202011030디버깅 기술: 158. Visual Studio로 디버깅 시 sos.dll 확장 명령어를 (비롯한 windbg의 다양한 기능을) 수행하는 방법
12115정성태1/14/202010785디버깅 기술: 157. C# - PEB.ProcessHeap을 이용해 디버깅 중인지 확인하는 방법파일 다운로드1
12114정성태1/13/202012639디버깅 기술: 156. C# - PDB 파일로부터 심벌(Symbol) 및 타입(Type) 정보 열거 [1]파일 다운로드3
12113정성태1/12/202013254오류 유형: 590. Visual C++ 빌드 오류 - fatal error LNK1104: cannot open file 'atls.lib' [1]
12112정성태1/12/20209859오류 유형: 589. PowerShell - 원격 Invoke-Command 실행 시 "WinRM cannot complete the operation" 오류 발생
12111정성태1/12/202013088디버깅 기술: 155. C# - KernelMemoryIO 드라이버를 이용해 실행 프로그램을 숨기는 방법(DKOM: Direct Kernel Object Modification) [16]파일 다운로드1
12110정성태1/11/202011680디버깅 기술: 154. Patch Guard로 인해 블루 스크린(BSOD)가 발생하는 사례 [5]파일 다운로드1
12109정성태1/10/20209615오류 유형: 588. Driver 프로젝트 빌드 오류 - Inf2Cat error -2: "Inf2Cat, signability test failed."
12108정성태1/10/20209652오류 유형: 587. Kernel Driver 시작 시 127(The specified procedure could not be found.) 오류 메시지 발생
12107정성태1/10/202010637.NET Framework: 877. C# - 프로세스의 모든 핸들을 열람 - 두 번째 이야기
12106정성태1/8/202011994VC++: 136. C++ - OSR Driver Loader와 같은 Legacy 커널 드라이버 설치 프로그램 제작 [1]
12105정성태1/8/202010664디버깅 기술: 153. C# - PEB를 조작해 로드된 DLL을 숨기는 방법
12104정성태1/7/202011380DDK: 9. 커널 메모리를 읽고 쓰는 NT Legacy driver와 C# 클라이언트 프로그램 [4]
12103정성태1/7/202014054DDK: 8. Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제 [1]파일 다운로드2
12102정성태1/6/202011696디버깅 기술: 152. User 권한(Ring 3)의 프로그램에서 _ETHREAD 주소(및 커널 메모리를 읽을 수 있다면 _EPROCESS 주소) 구하는 방법
12101정성태1/5/202011064.NET Framework: 876. C# - PEB(Process Environment Block)를 통해 로드된 모듈 목록 열람
12100정성태1/3/20209115.NET Framework: 875. .NET 3.5 이하에서 IntPtr.Add 사용
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...