블로그 초창기에 관련해서 글을 올렸었는데 최근 제가 라이센스 관련해서 말씀드리면서 도움받은 글을 그대로 걸어두자니 기분이 찜찜하여 새롭게 정리하여 올립니다.  VHD 설치과정부터 Differerncing VHD 기능 활용까지 종합하여 설명하려고 하는데 스크린샷을 준비하면서 보니 내용이 좀 길어질 듯 합니다.  어렵지는 않으니 여유있게 넉넉한 마음가짐으로 읽어내려가 주세요 ^^

 가장 중요하게 알고 시작하셔야 할 점은 윈도우7 얼티밋, 엔터프라이즈 에디션과 서버 2008 R2 만 이 기능을 지원합니다. 타 에디션은 안타깝지만 활용이 어려우니 참고해주세요. 
 
 VHD 의 효용성에는 어떤게 있느냐, 물리적 하드디스크에 설치한 것보다 느리지는 않느냐, 가상디스크에 설치하면 어떤 식으로 하드디스크 공간이 활용되느냐 등 많은 의구심을 가지시는 걸로 알고 있는데 효용성이라면 가장 큰 효용성은 1초만에 복원이 가능하다는 점이겠죠. 자신이 최적화 상태로 설정하여 저장해둔 VHD 파일로 교체하면 부팅 시간을 제외하고 단 1초면 최적화 상태의 윈도우로 돌아갑니다.  이는 지금까지 VHD 관련포스팅에서 손가락이 닳도록 적었으니 아실테고 ^^;;; 
 
 물리적 하드디스크에 설치한 것보다 느리지 않느냐에 대한 질문에 명확한 정답은 없는 것 같습니다.  제가 지금까지 사용한 경험에 의하면 처음 적용해서 부팅할때는 조금 더딘감이 있지만 그 이후 부팅, 사용시에는 느리다는 느낌을 받은 적이 없습니다. 마지막으로 어떤식으로 공간이 활용되느냐는 본문에서 스크린샷을 보면서 말씀드릴게요~

 지금부터 바로 본론으로 들어가겠습니다.  소제목에 Channy 님이 보내주신 숫자 아이콘을 한번 써먹어 보려고 합니다 ㅎㅎ 이 자리를 빌어 감사드려요 ^^



 

 윈도우7 을 VHD에 설치하는 과정은 간단합니다. 일반적으로 윈도우 설치하듯이 하는데 명령어 몇줄만 넣어주면 끝입니다.  명령어를 입력하려면 명령프롬프트를 열어야 겠죠?? 아래와 같이 설치 시작하는 화면에서 Shift + F10 을 누르시면 명령프롬프트창이 뜹니다.




 CMD 창이 뜨면 아래와 같이 명령어들을 입력해 줍니다. 지금 이 과정은 C 드라이브가 생성/포맷되어 있다는 가정하에 작업하는 것입니다. 혹시 안되어 있다면 파티션 생성과 포맷을 먼저 하고 이 과정을 진행해 주세요 ^^


 [ 가상디스크(VHD) 만들기 ]

1.  diskpart

2.  create vdisk file=c:\win7en.vhd maximum=20480 type=expandable
3.  attach vdisk
4.  exit


 정확하게 4줄이니까 간단하죠? 잠시 위 명령어에 대해 설명드리자면 다른건 크게 설명할 게 없고 2번 과정의 명령어를 보시면 C 드라이브에 win7en 라는 이름으로 생성합니다. 일반적으로 C 드라이브시겠지만 아니라면 사용할 드라이브명을 직접 입력하시면 되겠죠?
 그리고 최대 크기를 20GB 로 설정했습니다. 10240 이 10GB 니까 나름 계산하셔서 활용하실 수 있겠죠? ^^ 마지막으로 확장식 동적 디스크로 지정했는데 expandable 대신에 fixed 를 입력하시면 고정식으로 설치할 수 있습니다. 고정식으로 설치하면 어떻게 되느냐... 처음에 윈도우를 설치하면 32비트의 경우 5~6GB정도의 용량을 차지하는데 지정한 20GB로 인식하고 용량을 잡아먹습니다. 즉, 용량을 많이 잡아 먹는 단점이 있는거죠. 그리고 처음에 지정한 20GB 이상을 활용하지 못합니다. 하지만 확장식 동적 디스크보다는 조금 빠르다는 장점이 있기도 합니다.

 이제 다음단계로 넘어가시면 아래처럼 위에서 생성한 20GB 공간이 생겼죠?? 원래 제가 지저한 하드디스크 공간은 50GB입니다. 할당되지 않은 공간 위에 50GB 의 디스크가 보이시죠?? 이제 생성한 디스크를 클릭 후 다음을 눌러주면 설치가 됩니다. 혹시 가끔 다음을 눌렀을 때 주의표시와 함께 메세지창이 뜨는데 무시하고 진행하시면 설치됩니다.




 설치를 완료한 모습입니다. 아래 사진을 보시면 가상디스크는 무조건 C 드라이브로 인식되어 집니다. 그리고 D 드라이브는 원래의 물리적인 공간입니다. 그 아래 사진들로 넘어가서 탐색기로 C 드라이브 속을 들여다보니 윈도우 처음 설치때와 같죠? ^^ 그리고 D 드라이브 속을 보면 생성한 VHD 파일만 존재합니다. 현재 20GB의 크기를 보여주는데 만약 아래에서부터 알려드릴 Differencing VHD 기능을 이용해 자식VHD 를 생성한다면 아래 파일은 순수하게 설치되어진 용량만큼만 인식할 것입니다. 아래 사진부분은 본문 길이와 스크롤 압박을 고려해 접이식으로 설정합니다 ^^;;;;






 

  위 과정만 거치시고도 자신만의 설정 등으로 최적화 해두시고 다른 파티션 등에 위 파일을 복사해 놓으시면 한창 사용하시다가 최적화 상태의 녀석과 교체하실 수 있습니다. 하지만 GB 단위의 파일이다 보니 교체하려면 시간이 좀 걸리겠죠?? 최적화 상태라고 해서 6~7GB라고 해도 3분은 넉넉잡아 걸릴겁니다. 물론 긴시간은 아니지만 지금부터 알려드릴 Differencing VHD 기능을 통한 1초만에 복원에 비하면 엄청 느린거죠 ^^;;;
 참고로 혹시나 현재 사용중인 파일을 드래그하여 복사하시려고 할까봐 말씀드리지만 교체작업은 복구모드를 통한 PE 부팅으로 가능합니다.  물론 해당 파일을 통해 부팅하지 않아서 사용중이 아니라면 윈도우 상에서도 가능합니다. 관련 내용은 아래에서 다루기로 할게요 ^^
 
 우선 자식 VHD 를 생성하시려면 위에서 말한바와 같이 복구모드를 통한 PE 부팅을 해야합니다. 어떻게 하느냐... 부팅할 때 F8 신공을 보여주시면 컴퓨터가 놀라서 아래 좌측과 같이 복구모드를 할 수 있는 창을 보여줍니다 ^^;; 여기서 컴퓨터 복구에서 엔터~ 그러면 몇가지 과정을 거친 후 우측 사진과 같이 시스템 복구 옵션창이 뜰텐데요.  여기서 명령프롬프트를 클릭해서 열어주세요.




  CMD 창이 열렸다면 다시 몇가지 명령어를 입력해 줘야 합니다.



 [ 자식VHD 만들기 ]

1.  diskpart
2.  create vdisk file=c:\liverex.vhd parent=c:\win7en.vhd
3.  attach vdisk
4.  list vol
5.  exit
6.  bcdboot e:\windows /s c: /l ko-kr
7.  exit



 짦박하게 설명드리면 2번 명령어에서 liverex 부분은 원하시는 자식VHD 이름입니다. 그리고 win7en.vhd 는 처음에 생성한 부모 VHD의 이름이죠. 자식VHD 를 생성하시는 위치는 부모와 같은 곳이어야 합니다. 안그러면 오류나요 ^^;; 그리고 6번 과정에서 E 드라이브는 4번 과정을 거쳤을 때 위 사진처럼 50GB 디스크 외에 20GB 디스크가 연결되어 있죠? 그 드라이브명입니다. 정 찾기 힘드시면 드라이브명을 하나하나 입력해가면서 dir 해보는 방법도 있겠네요 ^^ 

 이제 재부팅을 해보면 멀티부팅 메뉴로 시작될겁니다.  여기서 최근에 생성한 녀석이 자동으로 위에 가기 때문에 위 메뉴로 부팅하시면 자식VHD 를 이용해 부팅을 합니다. 아래는 원래 설치한 부모VHD겠죠?  멀티부팅 메뉴이름은 나중에 바꾸실 수 있으니 여기서는 그 내용은 생략할게요.  제 블로그를 검색해 보시면 관련 내용이 다 있습니다.

 저는 자식 VHD 로 부팅해보았습니다. 아래와 같이 파일이 2개로 늘었죠?  그리고 부모 VHD 는 5.3GB 로 인식하는 모습이 보이실겁니다.  현재 자식 VHD 크기는 부팅을 했기에 20GB로 인식한 모습인데 좀 더 아래에서 보시면 아시겠지만 40 MB 정도의 크기로 생성되어 졌습니다.  하지만 다시 복구모드를 이용해 PE 부팅을 하고 1번과 2번과정만 거친 후 exit 하시면 100 KB 정도의 크기로 확 줄어듭니다. 이 파일만 백업해 두시고 원하실 때 교체를 하시면 복구가 되는겁니다. 그러니까 1초 복구가 거짓말이 아닌거죠 ^^




 그런데 자식VHD 를 생성하면 자식VHD 부팅 로더에 복구모드 항목이 없습니다. 부모 VHD 부팅 로더에는 recoverysequence 항목이 보이시죠? 이 부분이 복구모드로 들어갈 수 있게 해주는데 위에 자식 VHD 부분에는 동일 항목이 없는 걸 보실 수 있습니다. 그럼 어떻게 복구모드를 만드느냐... 이것도 제 블로그내에 제가 스크립트 짜놓은 파일이 있습니다. 포스팅 제일 하단에 관련 참고 링크를 이용하시면 되겠네요~





 복구모드를 생성하고 다시 PE 로 부팅하여 C 드라이브의 내용물들을 dir 로 살펴보았습니다.  liverex.vhd 가 40 MB 로 표시되고 있죠??  하지만 위에서 언급한 바대로 두 줄의 명령어만 넣어주고 마무리하면 크기를 확 줄일 수 있습니다.




 우선 기존의 자식 VHD 를 지워줍니다. 그리고 자식 VHD 만들기 명령어에서의 1번과 2번을 입력하고 exit 를 입력하면 끝입니다. 여기서 주의하실 점은 2번을 입력할 때 처음 만들때와 같은 이름으로 해야합니다. 이제 그 아래 사진을 보시면 109 KB 로 용량이 확 줄어든 모습을 보실 수 있습니다 ^^ 이 파일을 백업하고자 하는 파티션 및 폴더에 복사해 주시면 모든 과정이 끝납니다. 마지막으로 백업은 다른 파티션에 하시는 것을 추천합니다! 그래야 더 안전하겠죠?

[참고 1] 위에서 잠시 말씀드렸지만 최적화 상태로의 VHD 교체는 PE 로 부팅해야 됩니다. 그런데 매번 복구모드를 통해 부팅하려면 번거롭겠죠? 그래서 관련하여 귀차니즘을 극복하고자 짠 스크립트 내용이 포스팅 제일 하단에 참고 링크로 달려 있으니 간편하게 이용하세요~

[참고 2] 혹시 사용하시면서 나중에 부모 VHD 로 부팅하여 새로운 내용을 설치하거나 업데이트 하더라도 다시 자식 VHD 를 생성해줄 필요는 없습니다. 지금처럼 PE 로 들어오셔서 109 KB 짜리 백업한 이 파일만 기존의 자식 VHD 와 교체해주시면 업데이트된 부모 VHD 의 자식 VHD 로 활용이 됩니다. 물론 다른 부모의 자식이면 안되겠죠? ^^;;;








LiveREX 유튜브 채널 추천 영상 (구독하고 선물도 받아가세요!)
☞ 이 글은 LiveREX 의 동의없이 재발행/재배포 할 수 없습니다. [License] 를 참고하세요!
Facebook Comment