윈도우7 VHD 부팅의 개념과 활용
VHD부팅의 개념
우리는 윈도우를 새로 설치할 때마다 줄곧 이런 다짐을 합니다.
“쓸데없는 것은 설치하지 말고 꼭 필요한 것만 설치하고 내게 최적화된 시스템을 항상 유지해야지” 라고..
그러나 윈도우를 사용하다 보면 어느새 윈도우 시스템은 자기도 모르는 이상한 프로그램들이 설치되어있기도
하며, 알게 모르게 적지 않은 오류나 오작동이 생겨버리고 맙니다.
다시 윈도우를 설치하여 순결해지고 싶은 마음이 간절하지만, 설치하고 다시 세팅을 해야하는 짜증스러운
마음이 더 앞서 그냥 포기하고 그상태로 계속 쓰게 됩니다.
중급유저이상분들은 이제 백업본으로 해결할려고 합니다. 최적화된 윈도우 시스템을 만들고 난후
고스트나 트루이미지등 백업복구툴로 그상태를 백업시켜 시스템이 더러워질때마다 복구를 합니다.
물론 백업용량에 따라 다르겠지만 그때마다 보통 15분에서 30분의 시간을 소요해야합니다.
이런 귀찮은 작업을 하지도 않고
“항상 깨끗한 자기만의 최적화된 시스템을 유지할 수 있는 방법”이 바로 VHD 부팅입니다.
VHD란 Vitual Hard Disk의 약자로 우리말로는 가상하드디스크입니다.
이는 우리가 흔히 알고 있는 가상시디이미지와 비슷한 점이 많습니다.
시디의 내용물을 한 개의 파일로 즉 이미지로 만들어
데몬이나 시디스페이스등의 가상이미지툴로 마치 실제 시디를 시디롬에 넣은 것처럼 구현시킵니다.
BroodWar.ISO라는 파일이지만 이를 마운트를 하여 하나의 시디롬디스크로 인식을 하게 하는 것처럼
VHD는 VHD란 확장자를 가진 하나의 파일을 하나의 하드디스크처럼 인식시키도록 하는데 이 가상하드디스크를
통해 윈도우를 부팅할 수 있다는 점이 가장 핵심입니다.
그러므로, VHD부팅이란 윈도우를 설치할때 실제 하드디스크의 어느 한 파티션에 설치하는 것이 아니라
VHD파일안에 설치를 하여 VHD파일 1개만으로 윈도우를 부팅시킬수가 있습니다.
위그림에서 보는 바와같이 일반적으로 C:에 윈도우를 설치하게되면 C:에 윈도우파일들이 존재하게 되는데,
VHD를 통해 윈도우를 설치하게 되면 C:에는 부팅에 관련하는 파일을 제외하고는 VHD파일 1개만이 존재합니다.
그럼 이제 VHD로 직접 부팅을 한 상태에서의 디스크와 파티션에 저장된 파일 형태를 살펴보겠습니다.
저는 한개의 물리 디스크를 2개의 파티션으로 나누고 각 파티션의 볼륨명을 Par-1,Par-2로 지정한 후
Par-1의 볼륨을 갖는 파티션에 일반적으로 하는 직접 설치와 VHD통한 윈도우 설치를 했습니다.
VHD로 부팅을 한 상태에서 보니 기존 Win7.vhd라는 파일이 저장된 Par-1이라는 볼륨을 가진 파티션 C:는 D:로 변경되고
Par-2 볼륨을 가진 파티션 D:는 E:로 변경이 되었습니다. 그리고 디스크목록에서는
푸른색의 아이콘을 지닌 새로운 디스크 1이 생겼으며 이 디스크에는 새볼륨 C:가 자리하고 있습니다.
Win7.vhd라는 파일이 하나의 하드디스크로 둔갑을 하고, VHD에 설치했던 윈도우는 C:에 저장이 되어 있는 것이죠.
이제 우리는 C:에 온갖 프로그램을 설치해도 실제로는 Win7.vhd라는 1개의 파일안에 설치가 됩니다.
VHD 부팅 활용
자, 이제 감이 좀 오시나요? 여기에서 조금만 더 생각을 해보면
VHD에 윈도우와 자신이 쓰는 프로그램을 설치하고 자신에 맞게 세팅 및 최적화를 한후 vhd파일을
따로 저장을 하고 시스템이 더러워졌을때 저장해놓은 vhd파일로 교체를 해주게 된다면?
다시 시스템은 그때 그시절, 자신에게 최적화된 시스템으로 되돌아가게 되는 겁니다.
하지만 몇GB 혹은 10GB가 넘는 vhd파일을 복사해주는것도 유저에게는 귀찮아지기 시작합니다.
이건 고스트작업과 속도면에서 별반 차이가 없으니까 말이죠.
그래서 VHD부팅의 기능중 상속이라는 것을 사용하여 더욱더 편하게 VHD부팅을 할 수 있습니다.
VHD의 상속 – 부모와 자식
처음 생성한 VHD파일의 모든 것을 상속받은 또 하나의 VHD파일을 생성하는데
처음 생성한 VHD를 부모VHD라고 하며, 상속 받은 VHD를 자식VHD라고 부릅니다.
부모VHD는 용량이 크지만 자식VHD는 자신의 부모가 누구인지에 대한 정보만을 지니고 있기 때문에
처음 생성했을때 자식VHD의 용량은 1MB미만이고, 이 자식VHD로 부팅을 하게 되면 부모의 모든것을 이어받아
마치 부모VHD로 부팅한 것과 같은 효과입니다.
대신 자식VHD로 부팅한 상태에서의 모든 변화량은 오직 자식VHD에만 축적이 되며
부모VHD에는 영향을 주지 않게 되어, 자신의 최적화된 시스템인 부모VHD는 항상 그상태를 유지하고 있습니다.
더 나아가, 처음 생성한 자식VHD파일은 부모VHD에게 모든 것을 상속받았지만,
아직 자식VHD로 부팅하여 작업을 하지 않은 상태하지 않았기 때문에 깨끗한 상태입니다.
이 1MB도 되지 않는 자식VHD파일을 따로 만들어놓고 우리는 이제 자식VHD로만 부팅을 하다가
원하고 싶을때 깨끗한 자식VHD파일만 교체해주면 1MB를 복사하는 시간(1초도 안돼겠죠.)만에 다시 깨끗한 상태로 돌아갈 수 있는 것입니다.
이부분은 나중에 좀더 상세하게 포스팅하겠습니다.
VHD의 멀티부팅
1개의 VHD파일에 1개의 윈도우가 들어 있습니다.
이것은 또 하나의 VHD파일에 또 다른 윈도우를 설치할 수도 있다는 얘기가 되며,
이는 곧 실제 하드디스크에 윈도우7 32비트와 64비트 2가지 혹은 3가지이상의 윈도우7을 설치하기 위해서는
파티션도 그만큼의 수로 나누어 각각 파티션에 설치해야 하는 반면,
VHD부팅을 활용하게되면, 1개의 파티션안에 VHD만 새로 생성하여 멀티부팅이 가능하다는 점입니다.
실제 하드디스크의 파티션을 나누지 않고 이렇게 통으로 써도
vhd부팅을 하게되면 vhd가 c:가 되고 실제하드디스크의 통파티션은 d:가 되므로
실제 하드디스크에서 vhd파일의 용량을 제외한 나머지 공간을 데이터 영역으로 사용이 가능합니다.
물론 파티션을 통으로 쓰지 않고 개인취향에 따라 나누어 써도 됩니다.
이렇게 VHD 파일만으로 멀티부팅이 가능하기 때문에 새로 나온 윈도우 8 베타버전같은 것을
VHD로 설치하여 테스트해본후 맘에 안들면 VHD파일과 부팅메뉴항목만 제거해버리면 이전과 똑같은 환경이 됩니다.
VHD의 배포
새 하드디스크나 SSD를 구매하여 거기에 윈도우를 설치하여 사용하고 싶을때,
예전과 같으면 우리는 다시 처음부터 윈도우를 설치하여 세팅을 해야하지만,
VHD부팅을 사용하고 있던 유저라면 VHD파일만 새하드디스크에 복사한 후 VHD를 부팅메뉴에 등록시켜주기만 하면 됩니다.
※물론 메인보드가 바뀔 경우에는 모든 드라이버를 새로 잡아야하기 때문에 되도록 VHD유저라도 새로 vhd를 생성하여 설치를 하는게 좋습니다.
메인보드등 하드웨어 스펙이 다른 시스템에서도 설치가 가능하도록 일반화(Sysprep-만능고스트와 비슷)시키거나,
윈도우7의 설치이미지의 핵심인 INTALL.WIM만 VHD에 풀어 놓으면
이 VHD파일만으로 모든 PC에서 사용가능한 VHD가 됩니다.
이경우, 윈도우 설치시간의 절반이상을 잡아먹는 파일복사시간이 빠지고 장치업데이트정도만 새로 하기때문에
여러 PC에 윈도우를 설치할때에도 용이할 수 있습니다.
VHD부팅 지원 OS
지금까지 VHD에 대해 알아보았는데요, VHD부팅은 모든 윈도우7에서 가능한 게 아닙니다.
물론 하위 버전인 XP나 비스타에서는 더더욱 불가능하고요,
일단 윈도우7에디션중에서는 오직 얼티메이트와 엔터프라이즈만이 가능하며
윈도우서버 2008 R2, 이제 곧 출시될 윈도우8
그리고 윈도우7의 형제인 Windows Embedded Standard 7 정도가 가능합니다.
※ Windows Embedded Standard 7에서 가볍게 만들었다는 Windows Thin PC는 VHD부팅을 지원하지 않습니다.
한마디로 싸구려제품은 지원하지 않는답니다.......
관련 포스팅
댓글