이곳은 백업 블로그 입니다. 현재 캐플이 활동 중인 블로그는 CAppleBlog.co.kr 입니다. 최신 정보들은 새로운 블로그에서 확인해 보세요. ^^

- 이곳은 기존 블로그들의 글을 한군데로 모아 놓은 백업 블로그입니다.

- 현재 링크는 대부분 올바르지 않으며 이러한 링크들은 모두 cappleblog.co.kr 로 이동합니다. (※ 링크 주의)

- 블로그와 커뮤니티는 서로 다른 공간입니다.(로그인을 따로 해야합니다.)

- 저는 윈티티(WinTT)이자 신비(ShinB)이며 캐플(CApple)입니다. 편한대로 불러주세요.

Disk2vhd 의 소개


윈도우 7 에서는 가상 디스크(VHD) 를 생성하여 이를 실제 디스크처럼 활용할 수 있습니다.

내 컴퓨터의 새로운 디스크 - 가상 디스크의 생성과 관리
가상 디스크의 생성과 관리 - Create Vdisk, Attach, Detach
윈도우 7 설치 - 가상 디스크(VHD)에 설치하기(Enterprise, Ulimate)


하지만 사용 중인 실제 디스크를 현재 상태 그대로 VHD 로 만들기 위해선 고스트와 같은 디스크 클론 유틸리티를 사용할 수 밖에 없었습니다. 하지만 고스트는 상용 프로그램이라 누구나 사용할 수 없다는 문제점이 있습니다. 하지만 지금 소개해 드리는 프로그램을 사용하면 누구나 손쉽게 실제 디스크를 VHD 로 바로 변환하실 수 있습니다. 이 프로그램은 LiveRex 님의 블로그에서 소개된 적이 있는 프로그램입니다. 좋은 프로그램을 소개해 주신 렉스님께 이자릴 빌어 감사의 말을 전합니다.




프로그램은 일전에도 소개해 드린 적이 있는 SDelete 를 만든 곳과 동일한 곳인 Sysinternals 에서 제공하는 Disk2vhd 란 프로그램입니다. Sysinternals 은 마이크로소프트사에 인수되었으니 어찌보자면 마이크로소프트에서 제공하는 프로그램이라고 봐도 무방할 듯 합니다. 프로그램은 아래의 페이지에서 다운로드 받으실 수 있습니다.

http://technet.microsoft.com/ko-kr/sysinternals/ee656415(en-us).aspx


또는 신비로그의 윈도우 7 용 유틸리티 모음에서도 다운로드를 받으실 수 있습니다. 프로그램을 다운로드 받으신 후 압축을 푸시면 아래와 같은 세 개의 파일이 나옵니다.





이 중에서 나머지 두 개의 파일은 도움말과 설명 파일이고 실제로 사용되는 파일은 disk2vhd.exe 파일 하나 입니다. 파일은 그대로 실행하셔서 GUI 로 사용하셔도 되고 윈도우 폴더의 System32 폴더에 복사해 두시고 명령줄로 사용하셔도 됩니다.








Disk2vhd 를 통한 VHD 파일의 생성


그럼 실제로 Disk2vhd 를 사용해 보도록 하겠습니다. 가장 먼저 현재 디스크의 모습입니다.





작업을 시작하기에 앞서 여러분들이 반드시 기억하셔야 할 내용이 있습니다. 이 프로그램의 이름은 Disk2vhd 입니다. Disk to VHD 란 뜻이죠. Drive to VHD, Partition to VHD, Volume to VHD 가 아닙니다. 프로그램 이름 보고 바로 알았어야 한건데... 실제로 사용해 보고 테스트 해 보면서 알게 되다니... ㅜ_ㅜ 제가 지금 드리는 말은 프로그램을 실제로 사용하여 작업하는 과정과 결과물을 보시면 무슨 뜻인지 아시게 되실겁니다. 그럼 실제 디스크를 VHD 가상 디스크로 만들어 보도록 하겠습니다.


1. Disk2vhd 를 실행합니다.

2. VHD File name 항목에 저장 될 VHD 파일의 이름과 경로를 지정해 줍니다. 직접 타이핑 하셔도 되고 [...] 버튼을 클릭하여 브라우저에서 경로를 선택하고 VHD 파일의 이름을 지정해 주셔도 됩니다.

3. Volume to include 에서 데이터를 포함할 볼륨(드라이브)에 체크해 줍니다.





4. Create 버튼을 클릭하면 디스크를 VHD 로 생성하고 선택한 볼륨의 데이터를 복사합니다.





5. 작업을 마치면 Disk export to VHD completed successfully 문구가 표시됩니다. Close 버튼을 클릭하여 프로그램을 끝내시면 됩니다. VHD 는 동적 확장 가상 디스크 형식으로 생성됩니다.







이제 이렇게 생성된 디스크를 시스템에 연결해 보도록 하겠습니다. 여기서부터는 꽤나 중요한 내용입니다.





보시면 아시겠지만 우리는 C: 드라이브 하나만 선택했지만 C: 드라이브가 포함된 디스크가 통채로 VHD 로 생성된 모습입니다. 그리고 작업을 보신 것과 같이 현재 부팅하여 사용 중인 시스템 드라이브가 포함된 디스크를 바로 VHD 로 생성할 수 있는 것을 아실 수 있습니다. 편리하죠. ^^

또한 VHD 파일은 연결은 되지만 현재 시스템에선 사용할 수 없습니다. 이유는 간단합니다. 모든 디스크에는 해당 디스크를 나타내는 고유 서명이 존재하는데 디스크를 그대로 복제한 것이기 때문에 서명 충돌이 일어나기 때문입니다. 생성한 VHD 의 정확한 상태를 보려면 다른 컴퓨터에서 연결을 해야만 합니다. 아래는 다른 컴퓨터에서 해당 VHD 파일을 연결해 본 모습입니다.





보시는 것과 같이 우리가 Volume to include 에서 데이터를 포함하기로 한 볼륨(드라이브)의(원본에서 C: 현재 가상 디스크에선 O:) 데이터는 그대로 복사가 되어 있는 반면 지정하지 않은(원본에선 D: 현재 가상 디스크에선 N:) 는 파티션만 담겨있는 모습을 확인할 수 있습니다. 데이터를 복사하지 않았으니 포맷 형식 또한 복사가 안 되고 그냥 포맷 안 된 RAW 상태인 거죠. 이 내용을 그림으로 정리하자면 아래와 같습니다.





어때요 간단하죠? 이제 제가 작업을 시작하기 전에 언급했던 Disk to VHD 의 의미를 이해하시겠죠? Volume to include 에서 선택하는 드라이브는 디스크 안에 포함된 볼륨 중 데이터를 복제할 볼륨을 선택해 주는 것 입니다. 만약 Volume to include 에서 디스크에 포함된 볼륨을 모두 선택해 주면 완벽한 실제 디스크의 복제 VHD 를 생성하실 수 있습니다.

단일 파티션 하나의 VHD 로 만들고 싶으신 분들이라면 Disk2vhd 는 좋은 선택은 아닐 듯 합니다. 단일 파티션을 VHD 로 복제하고자 한다면 어쩔 수 없이 VHD 를 새로 생성하고 고스트와 같은 디스크 클론 프로그램을 통해 Partition to Partition 으로 복제하는 방법을 사용해야 할 듯 합니다.








명령줄을 통한 Disk2vhd 의 사용


이러한 Disk2vhd 는 명령줄에서도 바로 사용할 수 있습니다. 아래는 Disk2vhd 의 명령에 대한 정리입니다.

Disk2vhd Disk2vhd <[Drive: [Drive:]...] | [*]> <VHD File>
실제 디스크를 가상 디스크로 복제합니다.

  • Drive: [Dirve:]...
    실제 디스크에서 가상 디스크로 데이터를 복제할 드라이브를 선택합니다. 선택된 드라이브가 포함된 디스크를 복제하고 선택한 드라이브의 데이터만 복제합니다. 드라이브는 동시에 여러 개를 지정해 줄 수 있으며 서로 다른 디스크에 위치한 드라이브도 동시에 지정이 가능합니다. 이 때 서로 다른 디스크에 존재하는 드라이브를 동시에 지정한 경우 VHD 파일은 디스크에 맞춰 각각 생성됩니다.
  • *
    현재 시스템의 모든 실제 디스크를 가상 디스크로 생성합니다. VHD 파일은 디스크에 맞춰 각각 생성됩니다.
  • VHD File
    생성할 가상 디스크의 경로와 파일 이름을 지정합니다. 서로 다른 디스크의 드라이브를 동시에 생성하도록 선택한 경우(VHD 파일이 디스크에 맞춰 각각 생성) 파일 이름에 -0, -1 과 같은 디스크의 번호가 붙습니다.




어째 명령 정리에 아직 이야기하지 않은 내용이 포함되어 있는데요. 뒤에서 계속 다룰거니 참고하시고 설명을 드리도록 하겠습니다. 명령을 내리는 방식은 굉장히 간단합니다. 그냥 데이터를 복제할 드라이브를 원하는대로 입력해 주시고 저장할 VHD 파일의 경로와 이름만 입력해 주시면 됩니다. 위에서 작업한 내용을 그대로 명령으로 내리면 아래와 같습니다.(이 때 Disk2vhd.exe 파일은 System32 폴더로 복사하여 어디에서도 실행이 가능하다는 전제 하에 명령을 내렸습니다.)

[명령 프롬프트 실행]

disk2vhd c: e:\Disk1-C.vhd








만약 여러 드라이브를 동시에 VHD 로 만들고 싶으시다면 아래와 같이 명령을 내려주시면 됩니다.

[명령 프롬프트 실행]

disk2vhd c: d: e:\Disk1.vhd




쉽죠? Disk2vhd 를 명령 프롬프트에서 명령줄로 사용하는 방법은 여기까지 입니다.








묻지마 실험실


다른 디스크에 위치해 있는 여러 드라이브를 한 번에 선택하여 VHD 를 생성하는 경우

위에서 Disk2vhd 의 명령을 정리한 표에서 모두 설명을 드린 내용인데요. Disk2vhd 를 통해 서로 다른 디스크에 존재하는 드라이브를 동시에 선택하여 VHD 를 생성하면 어떻게 될까요? 뭐 표를 보신 분들은 아시겠지만 보여드려야 하니 그냥 생성해 보죠.





위와 같은 디스크 상황에서 데이터를 복제할 볼륨으로 C: 드라이브와 E: 드라이브를 선택하여 D: 드라이브에 Test.vhd 로 저장해 보도록 하겠습니다.





보시는 것과 같이 디스크 수에 맞게 VHD 파일이 각각 생성되는 것을 확인하실 수 있습니다. 간단하죠? 이 때 파일의 뒤에 붙은 -0 과 -1 은 디스크의 번호를 의미합니다.





동적 볼륨을 선택하여 VHD 를 생성하는 경우

VHD 에 대해서 정리해 드렸을 때 윈도우 7 의 가상 디스크에서는 동적 볼륨을 사용할 수 없다고 했었습니다. 그런데 Disk2vhd 에서는 동적 볼륨도 선택이 가능합니다. 그래서 실제로 동적 볼륨을 Disk2vhd 를 통해서 VHD 로 생성해 보도록 하겠습니다. 아래는 테스트 할 디스크의 모습입니다. (제 실제 디스크의 모습을 여러분들께는 처음으로 공개하는 것 같네요. ^^;;; 어지럽더라도 이해 바랍니다. -_-)





이 중에서 동적 스트라이프 볼륨인 G: 드라이브를 Disk2vhd 를 통해 VHD 가상 디스크로 생성해 보도록 하겠습니다.





보시는 것과 같이 정상적으로 생성이 되는 걸 확인하실 수 있죠? 하지만 이걸 윈도우 7 에서 연결하여 사용할 수는 없습니다. 윈도우 7 에서는 가상 디스크에 동적 디스크를 사용할 수 없으니까요. 그래도 한 번 다른 시스템에서 가상 디스크를 연결해 보도록 하겠습니다.(서명 문제 때문에 정확한 테스트를 위하여)





이렇듯 동적 볼륨으로 생성한 VHD 파일은 윈도우 7 에서 연결하여 사용하는 것이 불가능 합니다. 그렇다면 이렇게 생성된 VHD 파일은 어디에서 사용될까요? VHD 를 사용하는게 꼭 윈도우 7 만 있는 건 아니죠. ^^ VHD 를 원래 사용하던 곳은 마이크로소프트사의 Virtual PC 라는 가상 머신이었습니다.





이렇게 Virtual PC 에서는 동적이든 기본이든 연결하여 사용하는게 가능합니다. 이 글은 여기까지 입니다. ^^*



p.s 요즘 믹시가 자꾸 이상하네요. 통계가 이루어지지 않아 11 시 경 다시 포스팅하였습니다.

: