Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 2개 있습니다.)
(시리즈 글이 2개 있습니다.)
개발 환경 구성: 43. Hyper-V VHD 파일 크기 확장하는 방법
; https://www.sysnet.pe.kr/2/0/711

개발 환경 구성: 44. VHD 파일 크기 확장하는 방법 - 두 번째 이야기
; https://www.sysnet.pe.kr/2/0/717





VHD 파일 크기 확장하는 방법 - 두 번째 이야기


예전에, Hyper-V에서 VHD 파일 크기 확장하는 방법에 대해서 설명을 드렸지요.

Hyper-V VHD 파일 크기 확장하는 방법
; https://www.sysnet.pe.kr/2/0/711

이번에도 다른 VM의 VHD파일이 최대 크기에 도달해서 확장해야 할 일이 있었는데, 불행히도 Windows Server 2003에서 제공되는 디스크 관리자에서는 "Extend Volume..."이라는 메뉴를 제공하지 않았습니다.

[그림 1: "Extend Volume..." 메뉴가 없는 Windows Server 2003]
extend_vhdsize_win2003_1.png

물론, 약간의 검색으로 문제는 해결되었습니다.

Extend Boot Partition in VHD
; http://vmtoolkit.com/forums/thread/206.aspx

댓글에 보면 다음과 같이 해결책을 제시해 주고 있습니다.

Re: Extend Boot Partition in VHD 
Reply Quote 
I created a virtual image of Windows 2003 R2 with antivirus and service packs then burned it to DVD so I would have a base image without taking up HD space on the server (WAIK is probably better, but I haven’t tried it yet).  It seemed like a great idea until I realized that the VHD was setup for 50GB.  So I did some research and found a pretty simple way to deal with this issue:

 
First, to make things easier on myself, I used VHDResizer to create a new VHD and copy the existing VHD into the new size.  This increases the HD size, but not the partition (keep the original around until you complete the process, just in case).

 
Second, I used VHDmount to mount the VHD and used diskpart.exe from the host to expand the VHD’s partition.  Shut down the guest VM.  In the host, open the command prompt and type ‘cd Program Files\Microsoft Virtual Server\Vhdmount’

 
Mount the image

C:\>Program Files\Microsoft Virtual Server\Vhdmount>vhdmount /m “C:Documents and Settings\All Users\Documents\Shared Virtual Machines\<server name>\<server name>.vhd” <drive letter>
Start diskpart

C:\>Program Files\Microsoft Virtual Server\Vhdmount>diskpart
Expand the partition

DISKPART>list disk
DISKPART>select disk 3 -----check the number in the list
DISKPART>list part
DISKPART>select part 1 -----check the number in the list
DISKPART>extend
DISKPART>list part -----check the new size
DISKPART>exit
Dismount and save changes

C:\>Program Files\Microsoft Virtual Server\Vhdmount>vhdmount /u /c “C:Documents and Settings\All Users\Documents\Shared Virtual Machines\<server>\<server>.vhd”
 
After booting up the VHD again, you’ll be prompted to restart since Windows installed new hardware (your new HD).  After reboot, your new HD partition should be ready.

그러다가 가만히 생각해 보니, Windows Server 2008이 있는 사람이라면 굳이 diskpart를 이용하지 않더라도 해결이 가능한 방법이 있습니다. 어차피 VHD이니까, VM을 종료하고 해당 VHD 파일을 Windows Server 2008(VM 또는 호스트 머신)에 하드 디스크로 인식시킨 다음 디스크 관리자에서 확장을 시켜주면 되는 것입니다.



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/27/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 121  [122]  123  124  125  126  127  128  129  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
10907정성태2/24/201622168.NET Framework: 554. 인터프리터 - 재귀적 하향 구문 분석 C# 예제파일 다운로드1
10906정성태2/24/201620098.NET Framework: 553. C# 관리 코드에서 IMetaDataDispenserEx, IMetaDataImport 관련 인터페이스를 얻는 방법파일 다운로드1
10905정성태2/24/201623742오류 유형: 321. Hyper-V The operation failed with error code '32791'.
10904정성태2/23/201620886.NET Framework: 552. 인터프리터 - 역폴란드 표기법을 이용한 식의 분석 - C# 예제파일 다운로드1
10903정성태2/22/201621618.NET Framework: 551. 인터프리터 어휘 분석 프로그램 - C# 예제파일 다운로드1
10902정성태2/22/201621638.NET Framework: 550. GetFunctionPointer 호출 시 System.InvalidProgramException 예외 발생
10901정성태2/20/201624378.NET Framework: 549. ContextBoundObject 상속 클래스와 System.Reflection.ReflectionTypeLoadException 예외 [4]파일 다운로드1
10900정성태2/19/201623333.NET Framework: 548. Linq는 결국 메서드 호출! [3]파일 다운로드1
10899정성태2/17/201624762개발 환경 구성: 282. kernel32.dll, kernel32legacy.dll, api-ms-win-core-sysinfo-l1-2-0.dll [1]
10898정성태2/17/201623165.NET Framework: 547. PerformanceCounter의 InstanceName 지정 시 주의 사항파일 다운로드1
10897정성태2/17/201622598디버깅 기술: 76. windbg 분석 사례 - 닷넷 프로파일러의 GC 콜백 부하
10896정성태2/17/201623209오류 유형: 320. FATAL: 28000: no pg_hba.conf entry for host "fe80::1970:8120:695:a41e%12"
10895정성태2/17/201622168.NET Framework: 546. System.AppDomain으로부터 .NET Profiler의 AppDomainID 구하는 방법 [1]
10894정성태2/17/201622573오류 유형: 319. Visual Studio에서 찾기는 성공하지만 해당 소스 코드 정보가 보이지 않는 경우
10893정성태2/16/201621449.NET Framework: 545. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까? - 두 번째 이야기
10892정성태2/16/201621982오류 유형: 318. 탐색기에서 폴더 생성/삭제 시 몇 초 동안 멈추는 현상
10891정성태2/16/201625340VC++: 95. 내 CPU가 MPX/SGX를 지원할까요? [1]
10890정성태2/15/201624739.NET Framework: 544. C# 5의 Caller Info를 .NET 4.5 미만의 응용 프로그램에 적용하는 방법 [5]
10889정성태2/14/201621469.NET Framework: 543. C++의 inline asm 사용을 .NET으로 포팅하는 방법 - 두 번째 이야기파일 다운로드1
10888정성태2/14/201619385.NET Framework: 542. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까?
10887정성태2/3/201620797VC++: 94. MPX(Memory Protection Extensions) 테스트파일 다운로드1
10886정성태2/3/201622219개발 환경 구성: 281. Intel MPX Runtime Driver 수동 설치
10885정성태2/2/201621297오류 유형: 317. Sybase.Data.AseClient.AseException: The command has timed out.
10884정성태1/11/201622221개발 환경 구성: 280. 닷넷에서 SAP Adaptive Server Enterprise 데이터베이스 사용파일 다운로드1
10882정성태1/6/201622316Windows: 113. 윈도우의 2179, 26143, 47001 TCP 포트 사용 [1]
10881정성태1/3/201623361오류 유형: 316. 윈도우 10 - 바탕/돋음 체가 사라져 한글이 깨지는 현상 [2]
... 121  [122]  123  124  125  126  127  128  129  130  131  132  133  134  135  ...