본문 바로가기

IT 정보/컴퓨터

VHD 파일 용량 관리

반응형
  • VHD 최대 용량 확장하기

현재 10기가짜리 VHD를 사용중인데 20기가로 바꾸고 싶다면 cmd 창을 띄워서 아래와 같은 순서로 작업합니다.


명령어

설  명

diskpart

diskpart 실행

sel vdisk file=d:\Win7.vhd

확장 하고자 하는 vhd 파일 선택

detach vdisk

만약 해당 vhd가 사용중이라면 분리하고 작업해야 합니다.

연결 되어 있지 않으면 이 명령은 skip하고 다음 명령 실행

expand vdisk maximum=20480

20기가로 디스크 크기 확장 (MB단위)

attach vdisk

VHD를 가상디스크로 연결합니다.


디스크관리(diskmgmt.msc) 실행하면 다음과 같이 보입니다.

select partition 1

가상디스크의 첫번째 파티션을 선택합니다.

extend

파티션의 크기를 확장합니다.

exit

diskpart를 종료합니다.


attach vdisk 명령 이후로는 윈도우의 디스크관리(diskmgmt.msc)에서 해도 됩니다. 하지만 이미 diskpart 사용중인데 굳이 디스크 관리 띄워서 작업할 이유는 없겠죠. 편한대로 하면 됩니다.


※ 주의 사항

1. vhd 파일이 이미 사용중이면 detach 명령으로 분리하고 작업 해야합니다.

2. vhd 파일이 현재 부팅된 윈도우라면 PE등으로 부팅해서 작업 해야합니다.

3. 자식 vhd는 확장 할 수 없습니다. 부모 vhd를 확장하고 자식 vhd를 재생성합니다.



  • VHD 최대 용량 축소하기


VHD의 최대 용량 확장하기는 쉽게되지만 축소는 diskpart의 명령만으로는 불가능합니다.

VHD Resizer라는 프로그램을 쓰는 방법도 있는데 내부적으로는 아래 방법이랑 비슷하게 처리할듯하고 좀 번거러워서 그냥 아는 방법으로 합니다.


우선 diskpart로 기존 vhd를 연결하고 새 vhd를 만듭니다.

diskpart

  select vdisk file=d:\_vhd_\win7.vhd

  attach vdisk

  select partition 1

  assign letter=X

  

  create vdisk file=d:\_vhd_\win7_new.vhd type=expandable maximum=10240

  attach vdisk

  create partition primary

  format fs=ntfs quick

  assign letter=Y


여기서 고스트나 imagex 로 파티션을 복사하고 두 파일의 이름을 바꿔주면 됩니다.


- 고스트 실행해서 partition 복사

1) Local - Parition - To Partiton 실행

2) 소스 드라이브 선택 - 파티션(위에선 정한 X) 선택

3) 대상 드라이브 선택 - 파티션(위에서 정한 Y) 선택

4) 복사가 시작됩니다.


- 고스트 명령어로 partition 복사

1) diskpart 에서 list vdisk 를 실행해서 VHD들의 디스크번호 확인

   diskpart와 ghost의 시작번호가 다릅니다. diskpart=0, ghost=1 그러므로 + 1을 해주면 됨

2) ghost 명령 실행

   ghost32 -clone, mode=copy,src="소스디스크번호+1",dst="대상디스크번호+1"


- imagex를 이용하여 wim 파일로 만들고 그 wim을 다시 풀어주는 방식

1) wim 파일로 백업

   IMAGEX [FLAGS] /CAPTURE image_path image_file "image_name" ["description"]

   imagex.exe /capture /compress fast X:\ d:\_vhd_\temp.wim "Drive X"

2) wim 파일을 가상디스크에 풀기

   IMAGEX [FLAGS] /APPLY image_file image_number | image_name image_path 
   imagex.exe /apply d:\_vhd_\temp.wim 1 T:\



  • VHD 용량 최적화 하기

VHD의 경우 파일을 저장했다가 지우게 되면 그만큼 사용용량이 줄어드는게 아니고 늘어난 상태로 있기 때문에 프로그램 설치나 업데이트 등을 하고 임시 파일들을 지우게 되면 그만큼 파일 크기가 늘어나 있게 된다.

고정 크기 타입이라면 상관없기도 하고 이 방법이 먹히지도 않는데 동적 크기로 생성한 VHD라면 용량 최적화 작업을 해서 늘어난 필요없는 공간을 줄여주는게 좋습니다.


작업 내역은 PE나 윈도우설치 DVD로 부팅해서 command 창을 띄우고

vhd 파일을 연결한 후 sdelete라는 프로그램으로 빈공간을 정리하고 compact 명령으로 용량 최적화를 하면됩니다.


diskpart

select vdisk file="D:\_vhd_\windows7_x86.vhd" 
attach vdisk 
select partition=1 
assign letter=g 
exit


sdelete 의 경우 MS사에서 제공하는데 아래 링크가 최신버전(v1.6)인데 구버전의 경우 옵션에 해당 드라이브를 적어주면 작업이 됐는데 다른분한테 확인하니 잘 된다고 그러는데 제PC에서는 드라이브명 잘못적었다는 에러만 발생합니다. 혹시나 저같은 에러가 발생하는 분은 아래 "에러 날 경우"처럼 작업 하시면 됩니다.

http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx

정상적인 방법

에러 날 경우

d:\_vhd_\sdelete -c g:

g:

d:\_vhd_\sdelete -z

d:


diskpart

select vdisk file="D:\_vhd_\windows7_x86.vhd" 
detach vdisk 
compact vdisk 
exit 
반응형

'IT 정보 > 컴퓨터' 카테고리의 다른 글

VHD 사용 예제  (0) 2015.10.10
VHD 로 WIndows 시스템 구성  (0) 2015.10.10
IE10 최적화 레지스트리  (0) 2015.10.10
[Windows 7] 버전별 기능 차이  (0) 2015.10.10