Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 2. VPC에 Vista 설치하는 방법 [링크 복사], [링크+제목 복사],
조회: 17546
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


혹시 설치해 보신 분이 계실지 모르겠네요. ^^
설치하다가 포기하신 분도 계시겠지요.

일단, 제가 이리저리 해본 결과를 말씀드리겠습니다.

참고로, 이번에 설치한 것은 Windows Vista Beta2입니다.
Vista는 5가지 버전으로 나뉘는 데(Ultimate, Business, Enterprise, Home Premium, Home Basic), 공개된 Vista Beta2에는 모든 버전이 포함되어져 있습니다. 그런데, Product Key에는 Enterprise 버전에 대한 키가 누락되어 있습니다.

아무래도, 제한된 자원의 VPC에 설치하는 것이기 때문에 Vista Ultimate 버전으로 설치하지 않고, Vista Business 버전이 가장 나을 것 같다는 결정을 했고, 그에 대한 Business Product Key를 구했습니다.

제가 구성한 환경은 Virtual Server 2005에서의 VPC입니다.


1. Virtual Machine 생성 후 바로 종료를 한 다음, 기존에 만들어진 VM에 Vista VPC에 할당된 VHD 파일을 attach 시킨 다음, 해당 VM으로 부팅을 해서 VHD 드라이브를 포맷해 줍니다. 이 과정을 거치지 않으면, Vista 설치 도중 운영체제 복사 시점부터 진행할 수가 없습니다. 즉, Vista VM에서 사용할 VHD 파일은 반드시 포맷되어져 있어야 합니다.

2. 다음엔, VPC의 VMC 환경 설정에 CD-ROM 구성을 다운로드 받은 Vista ISO 파일로 연결하는 것에서부터 시작할 것입니다. 하지만, 이렇게 하시는 경우 Vista 설치 중간에 오류가 발생하는 현상이 반복되었습니다. 다음과 같은 오류 메시지를 나타내고는 더 이상 설치가 진행되지 않습니다.

 "Setup failed to open the Windows image file"

그래서, CD-ROM을 Vista ISO 파일에 바로 연결하지 않고, Host 운영체제에 Virtual CD-ROM Control Panel 등을 사용해서 가상 CD-ROM을 만들어서 Vista ISO 파일을 연결한 다음, VPC 환경에서 "Physical CD/DVD Drive"로 연결해야 합니다.

 Virtual Server 2005: 바로 ISO 파일을 연결한 경우 오류 발생.
 Virtual Server 2005 R2: 바로 ISO 파일을 연결해도 정상 동작. 


3. 위와 같이만 해도, Vista 설치 작업은 정상적으로 진행이 될 수 있습니다. 사실 Vista "설치"라고 보기에는 무리가 있는 것이, 아래에 보시는 것과 같이 "설치"라기 보다는 "완전 복사"의 형태를 띄고 있는 것 같습니다. 3GB의 ISO 파일 내용이 그대로 VHD에 복사되어 3GB가 소모됩니다. 거기에다, Expanding 작업까지 거치고 난 다음 (제가 구성한 Vista의 경우) 결국 8GB에 이르게 되었습니다.

Vista 파일 복사

4. 기본 설치를 마치고 나면, 무슨 작업만 하려고 하면 "consent.exe" 파일이 활성화 되어 (이것도 CPU 소모율을 잠시 40%를 넘게 유지시킴) "User Account Control" 정책에 따른 확인 대화창을 띄우게 됩니다. 우리 같은 개발자들은 시스템을 건드리는 것이 업무인데, 이런 상황은 도저히 용서가 되지 않습니다. 가장 먼저, 이 기능을 disable 시키는 것이 정신 건강에 이로울 텐데요. cmd.exe 창에서 "msconfig.exe"라고 치면 대화창이 하나 뜨는데요. "Tools" 탭을 누르고, "Disable UAP"라는 항목을 선택해서 "Launch" 버튼을 누르면 됩니다. 물론, 그다음에는 재부팅을 해야 하는데, 이후에는 대화창이 뜨지 않게 됩니다.

5. 작업 관리자 또는 Virtual Server의 CPU 활용율 그래프가 항상 97%를 웃돌고 있는 것을 볼 수 있습니다. 이래서야 애써 설치해 놓은 VPC를 다시는 들어오고 싶지 않을 텐데요. 우선 CPU 활용율부터 안정을 시켜야 할 텐데, 이를 위해서는 활성화된 서비스 목록에서 필요하지 않을 것 같은 항목들을 disable 시키는 것이 좋겠습니다.

그런데, 그러한 서비스 활성화 조정을 위해서 "Services" MMC로 들어가서 서비스에 대해 "Properties"를 누르니 30% 정도의 확률로 MMC가 죽어버리고, 그와 함께 오류 보고 기능이 작동되어 (시스템이 너무 느려져서) 한동안 아무것도 하지 못하게 됩니다.

저같은 경우에는 다음의 서비스들에 대해서 "Disabed"로 설정했습니다.

  - Application Experience
  - Base Filtering Engine
  - Certificate Propagation
  - Diagnostic Policy
  - Diagnostic System Host
  - Distributed Link Tracking CLient
  - External Memory Devices Management Service
  - Human Interface Device Access
  - IKE and AuthIP IPSec Keying Modules
  - IP Helper
  - IP Sec
  - Multimedia Class Scheduler
  - Portable Device Enumerator Service
  - Print Spooler
  - Security Center
  - Shell Hardware Detection
  - SSDP Discovery
  - Tablet PC Input Service
  - Thread Ordering Server
  - UPnP Device Host
  - Windows Audio
  - Windows Audio Endpoint Builder
  - Windows Defender
  - Windows Error Reporting Service
  - Windows Firewall
  - Windows Media Player Network Sharing Service
  - Windows Search

6. "Task Scheduler"에 가서 다음의 사항들에 대해서 Disabled로 만들어 버렸습니다.

  Customer Experience Improvement Program 
     Consolidator - Disabled
     OptinNotification - Disabled
     UploaderRunOnc - Disabled

  Defrag
     - AutomaticDefrag - Disabled

  MobilePC
     - TMM - Disabled

  Multimedia
     - SystemSoundsService - Disabled
 
  Shell
     - CrawlStartPages - Disabled
     - FrsMonitor - Disabled

  Windows Error Reporting
     - QueueReporting - Disabled

7. 위와 같이 설정하고 나면, 아래 화면과 같이 CPU 활용율이 아주 잠잠해진 것을 볼 수 있습니다. 음... 그렇다면 이 시점에서 한 가지 물어보실 텐데요. "그러한 서비스들을 모두 종료시킬 거면 도대체 뭐하러 Vista를 설치하느냐?" ^^; 아무리 그래도, VPC에 들어가서 속도가 느린 것으로 짜증내는 것보다는 낫다는 것이 제 생각입니다. 일단, CPU를 잠잠하게 재우고, 여러분들이 테스트해야 할 것이 있다면 선택적으로 살려가시는 것이 더 좋겟지요. ^^

CPU 활용율

8. 자... 이제 다음 화면과 같이 최종 구성된 Vista 화면을 볼 수가 있습니다.
제 생각에는 웬만한 기능들은 자신의 PC에 WinFX Runtime을 설치해서 테스트하시고, IIS 7.0이나 Vista에서만 지원되는 API가 있는 경우에만 VPC에 설치된 Vista를 이용하시는 것이 바람직할 것 같습니다.

VPC에서 활성화된 Vista Beta2






[최초 등록일: ]
[최종 수정일: 6/24/2021]

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

비밀번호

댓글 작성자
 



2006-05-27 12시24분
참고로, "Activation" 하시는 것 잊지 마시고요. ^^
IIS 설치는 추가로 해주셔야 합니다.
kevin25
2006-05-27 12시27분
Virtual Machine Additions도 정상적으로 동작하니 꼭 설치하십시오. 마우스가 잠기는 것이 여간 귀찮은 일이 아니거든요.
kevin25

... 76  77  78  79  80  81  82  [83]  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
11861정성태4/6/201919608디버깅 기술: 126. windbg - .NET x86 CLR2/CLR4 EXE의 EntryPoint
11860정성태4/5/201923452오류 유형: 527. Visual C++ 컴파일 오류 - error C2220: warning treated as error - no 'object' file generated
11859정성태4/4/201920680디버깅 기술: 125. WinDbg로 EXE의 EntryPoint에서 BP 거는 방법
11858정성태3/27/201921593VC++: 129. EXE를 LoadLibrary로 로딩해 PE 헤더에 있는 EntryPoint를 직접 호출하는 방법파일 다운로드1
11857정성태3/26/201919498VC++: 128. strncpy 사용 시 주의 사항(Linux / Windows)
11856정성태3/25/201919766VS.NET IDE: 134. 마이크로소프트의 CoreCLR 프로파일러 리눅스 예제를 Visual Studio F5 원격 디버깅하는 방법 [1]파일 다운로드1
11855정성태3/25/201921906개발 환경 구성: 436. 페이스북 HTTPS 인증을 localhost에서 테스트하는 방법
11854정성태3/25/201917563VS.NET IDE: 133. IIS Express로 호스팅하는 사이트를 https로 접근하는 방법
11853정성태3/24/201920366개발 환경 구성: 435. 존재하지 않는 IP 주소에 대한 Dns.GetHostByAddress/gethostbyaddr/GetNameInfoW 실행이 느리다면? - 두 번째 이야기 [1]
11852정성태3/20/201919588개발 환경 구성: 434. 존재하지 않는 IP 주소에 대한 Dns.GetHostByAddress/gethostbyaddr/GetNameInfoW 실행이 느리다면?파일 다운로드1
11851정성태3/19/201923352Linux: 8. C# - 리눅스 환경에서 DllImport 대신 라이브러리 동적 로드 처리 [2]
11850정성태3/18/201922344.NET Framework: 813. C# async 메서드에서 out/ref/in 유형의 인자를 사용하지 못하는 이유
11849정성태3/18/201921765.NET Framework: 812. pscp.exe 기능을 C#으로 제어하는 방법파일 다운로드1
11848정성태3/17/201918479스크립트: 14. 윈도우 CMD - 파일이 변경된 경우 파일명을 변경해 복사하고 싶다면?
11847정성태3/17/201922946Linux: 7. 리눅스 C/C++ - 공유 라이브러리 동적 로딩 후 export 함수 사용 방법파일 다운로드1
11846정성태3/15/201921586Linux: 6. getenv, setenv가 언어/운영체제마다 호환이 안 되는 문제
11845정성태3/15/201921757Linux: 5. Linux 응용 프로그램의 (C++) so 의존성 줄이기(ReleaseMinDependency) [3]
11844정성태3/14/201923068개발 환경 구성: 434. Visual Studio 2019 - 리눅스 프로젝트를 이용한 공유/실행(so/out) 프로그램 개발 환경 설정 [1]파일 다운로드1
11843정성태3/14/201918036기타: 75. MSDN 웹 사이트를 기본으로 영문 페이지로 열고 싶다면?
11842정성태3/13/201916369개발 환경 구성: 433. 마이크로소프트의 CoreCLR 프로파일러 예제를 Visual Studio CMake로 빌드하는 방법 [1]파일 다운로드1
11841정성태3/13/201916691VS.NET IDE: 132. Visual Studio 2019 - CMake의 컴파일러를 기본 g++에서 clang++로 변경
11840정성태3/13/201918309오류 유형: 526. 윈도우 10 Ubuntu App 환경에서는 USB 외장 하드 접근 불가
11839정성태3/12/201922210디버깅 기술: 124. .NET Core 웹 앱을 호스팅하는 Azure App Services의 프로세스 메모리 덤프 및 windbg 분석 개요 [3]
11838정성태3/7/201925839.NET Framework: 811. (번역글) .NET Internals Cookbook Part 1 - Exceptions, filters and corrupted processes [1]파일 다운로드1
11837정성태3/6/201939796기타: 74. 도서: 시작하세요! C# 7.3 프로그래밍 [10]
11836정성태3/5/201923354오류 유형: 525. Visual Studio 2019 Preview 4/RC - C# 8.0 Missing compiler required member 'System.Range..ctor' [1]
... 76  77  78  79  80  81  82  [83]  84  85  86  87  88  89  90  ...