본문 바로가기

Software/Windows

VHD 에 윈도우7 설치해서 여러 윈도우를 쓰며 복원을 쉽고 빠르게 하기

 

필자는 과거 Windows 98, XP 시절에는 고스트를 애용 했지만..

Windows 7 넘어오면서 백업&복원에 문제가 있어서 TrueImage를 이용 했지만.

윈도 자체의 백업&복원 기능도 충분히 쓸만해서 애용해다가..그것 마저도 귀찮아 져서..

VHD 를 사용 하게 되었다..사실 전부터 써볼 마음이 있었지만…필자가 가지고 있는

Windows 7 라이센스는 Professional 버전 이라서 사용 못하다가

이번에 큰맘먹고 Ultimate 버젼을 설치하게 되었습니다.

 

그렇다…VHD 사용은 Professional 포함 하위 버젼에서는 사용 할 수 없으며..

Ultimate 이상에서만 사용 가능합니다.

 

VHD를 간단하게 설명하면 일종에 가상 디스크 이미지 입니다.

 

Fixed – 우리가 쓰는 하드 디스크 처럼 용량을 미리 정해 놓고 그 용량만큼 사용 하는 겁니다.

Expandable – 동적 확장 디스크로 최요 용량을 정해놓고 사용자가 용량을 씀에 따라 용량이 가변합니다.

Differencing – 무모 VHD를 지정해 놓고 그 차이점만 기록 되는 방식 입니다.

 

종류는 위와 같이 3가지 이며…우리가 타 이미지 복구 프로그램을 안 쓰고 VHD 를 사용 하려는 이유도

Differencing 방식을 사용하기 위함입니다.

장점으로는 보통 Windows 7 설치 하고 각종 유틸을 설치 했을 때 용량이 수십 GB 를 넘게 됩니다.

복구 할 때마다 수십 GB 용량을 복구 하려면 시간도 오래 걸리고 이미지 보관 용량도 많이 필요 하게 됩니다.

Differencing  방식 VHD 를 사용 하게 되면 수십 기가에 기본 베이스 윈도우는 놔두고

변경 사항만 따로 저장 되기 때문에 여러 모로 장점이 있습니다.

 

MaxOS 를 사용 하시는 분이라면 가상 PC 소프트웨어인 페러럴즈를 써보셨을텐데..

여기에 소프트를 구성해 놓고 스냅샷 찍어 놓고 돌아가기만 사용 하면 수 초내에 바로 이전 상태로 돌아가는

스냅샷 기능이 이 방식을 사용 한 것 같습니다.

(확인해 본건 아니고..그 당시엔 수초내에 이전 설정으로 돌아가서 신기해 했는데..시간으로 볼 때나

백업 파일의 용량으로 볼 때나…변경 사항만 저장 하는 것으로 추축이 가능 합니다.)

 

아무튼…설치방법을 간단하게 스크린샷을 이용해서 설명해 보겠습니다.

 

우선 윈도우 설치 미디어를 넣고 윈도우 설치를 진행 하다가.

image
설치 하드 디스크를 고르는 부분에서..

 

새 하드 디스크라면 파티션을 만들고 포멧까지 해주고..
(기존에 있던 하드에 하는 거라면 그냥 다음으로 진행)

Shift + F10 을 눌러서 관리자 CMD 를 띄운 후..

image

DiskPart
DiskPart를 실행 한다..

List Vol
볼륨을 확인한다.
만들어진 파티션 순서에 따라서 저장할 하드가 C 가 아닐수도 있다.

Creat VDisk File=C:\Win7.VHD Maximum=20480 Type=Expandable
VHD 파일을 생성해 준다.

Select VDisk File=C:\VHD\Win7.VHD
VHD 파일을 선택해 준다.

Attach VDisk
VHD를 마운트 해준다.

Exit
DiskPart를 종료 한다.

 

image

다시 Windows 설치로 돌아와서 새로고침(R) 을 누르면

image
방금 만든 20기가 디스크가 추가로 생긴걸 확인할 수 있다.
여기에 일반적인 방법으로 윈도우를 설치한다~

image

이제 윈도 업데이트 및 필수로 사용 하는 어플들을 설치하고…

다시 윈도우 미디어로 부팅해서…

처음 화면에서 Shift+F10 을 눌러서 관리자 CMD 를 띄워 줍니다.

 

Microsfot Windows [Version 7.1.9833]


X:\Sources>DiskPart

Microsoft DiskPart 버젼 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
컴퓨터: MINWINPC

DISKPART> Creat VDisk File=E:\Win7_Child.VHD Parent=E:\Win7.VHD

  100 퍼센트 완료

DiskPart가 가상 디스크 파일을 만들었습니다.

DISKPART> Select VDisk File=E:\Win7_Chile.VHD

DiskPart가 가상 디스크 파일을 선택했습니다.

DISKPART> Attach VDisk

  100 퍼센트 완료

DiskPart가 가상 디스크 파일을 연결했습니다.

DISKPART> Exit

DiskPark 마치는 중...

X:\Sources>

 

이렇게 하면 Win7.VHD 를 부모로 두는 Win7_Child.VHD 가 생겼습니다.

이제 Win7_Child.VHD 를 사용 하면 되고…

현재 상태가 Clean 상태이니 이 파일을 복사해 두고 이 파일만 교체해서 사용 해도 됩니다.

 

저는 여러개의 자식이미지를 만들어서 원할때마다 골라서 부팅 하고싶습니다.

그럼 위에 방법으로 자식 윈도우를 만들어 줘도 되고..

자식 윈도우만 복사를 해도 됩니다.

 

Microsfot Windows [Version 7.1.9833]


X:\Sources>Copy E:\Win7_Child.VHD E:\Win7_Clean.VHD

X:\Sources>Copy E:\Win7_Child.VHD E:\Win7_Test.VHD

X:\Sources>

 

이제 부팅 시 이 자식 VHD 파일로 부팅을 할거라면  BCD에 등록을 해줘야 합니다.

하나만 사용 하실거라면 맨 위에 한 묶음만 해주시면 되고..

저와 같이 여러개 등록 원하시면 아래와 같이 해주시면 되는데..

주의 점은 처음 명령을 실행하고 나오는 GUID 값을 아래 똑같이 써줘야 한다는 겁니다.

보통 실행 할 때마다 하나씩 증가 합니다.

 

그리고 보라색은 표시될 이름이고….VHD 파일 이름 및 경로는 각자 상황에 맞게 입력 하시면 됩니다.

 

X:\Sources> bcdedit /copy {current} /d "Windows 7 - Child [VHD]"

항목을 {000000f1-0000-0000-0000-000000000000} 에 성공적으로 복사했습니다.

X:\Sources> bcdedit /set {000000f1-0000-0000-0000-000000000000} device vhd=[E:]\Win7_Child.vhd

X:\Sources> bcdedit /set {000000f1-0000-0000-0000-000000000000} osdevice vhd=[E:]\Win7_Child.vhd

X:\Sources> bcdedit /set {000000f1-0000-0000-0000-000000000000} detecthal on

 

X:\Sources> bcdedit /copy {current} /d "Windows 7 – Test [VHD]"

항목을 {000000f2-0000-0000-0000-000000000000} 에 성공적으로 복사했습니다.

X:\Sources> bcdedit /set {000000f2-0000-0000-0000-000000000000} device vhd=[E:]\Win7_Test.vhd

X:\Sources> bcdedit /set {000000f2-0000-0000-0000-000000000000} osdevice vhd=[E:]\Win7_Test.vhd

X:\Sources> bcdedit /set {000000f2-0000-0000-0000-000000000000} detecthal on




X:\Sources> bcdedit /copy {current} /d "Windows 7 – Clean [VHD]"

항목을 {000000f3-0000-0000-0000-000000000000} 에 성공적으로 복사했습니다.

X:\Sources> bcdedit /set {000000f3-0000-0000-0000-000000000000} device vhd=[E:]\Win7_Clean.vhd

X:\Sources> bcdedit /set {000000f3-0000-0000-0000-000000000000} osdevice vhd=[E:]\Win7_Clean.vhd

X:\Sources> bcdedit /set {000000f3-0000-0000-0000-000000000000} detecthal on

 

 

그리고 멀티 부팅 메뉴가 한글로 나오게 하고 싶다면 locale 을 ko-kr 로 변경하면 됩니다.

X:\Sources> bcdedit /set {bootmgr} locale ko-kr