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

비밀번호

댓글 작성자
 




... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...
NoWriterDateCnt.TitleFile(s)
11039정성태9/9/201625446오류 유형: 355. Visual Studio 빌드 오류 - error CS0122: '__ComObject' is inaccessible due to its protection level
11038정성태9/9/201629283VC++: 99. 서로 다른 프로세스에서 WM_DROPFILES 메시지를 전송하는 방법파일 다운로드1
11037정성태9/8/201632530.NET Framework: 603. socket - shutdown 호출이 필요한 사례파일 다운로드1
11036정성태8/29/201627479개발 환경 구성: 297. 소스 코드가 없는 닷넷 어셈블리를 디버깅할 때 지역 변숫값을 확인하는 방법
11035정성태8/29/201623415오류 유형: 354. .NET Reflector - PDB 생성 화면에서 "Clear Store"를 하면 "Index and length must refer to a location within the string" 예외 발생
11034정성태8/25/201627495개발 환경 구성: 296. .NET Core 프로젝트를 NuGet Gallery에 배포하는 방법 [2]
11033정성태8/24/201625520오류 유형: 353. coreclr 빌드 시 error C3249: illegal statement or sub-expression for 'constexpr' function
11032정성태8/23/201624645개발 환경 구성: 295. 최신의 Visual C++ 컴파일러 도구를 사용하는 방법 [1]
11031정성태8/23/201620398오류 유형: 352. Error encountered while pushing to the remote repository: Response status code does not indicate success: 403 (Forbidden).
11030정성태8/23/201624428VS.NET IDE: 111. Team Explorer - 추가한 Git Remote 저장소가 Branch에 보이지 않는 경우
11029정성태8/18/201631999.NET Framework: 602. Process.Start의 cmd.exe에서 stdin만 redirect 하는 방법 [1]파일 다운로드1
11028정성태8/15/201623825오류 유형: 351. Octave 설치 시 JRE 경로 문제
11027정성태8/15/201626371.NET Framework: 601. ElementHost 컨트롤의 메모리 누수 현상
11026정성태8/13/201627597Math: 19. 행렬 연산으로 본 해밍코드
11025정성태8/12/201627051개발 환경 구성: 294. .NET Core 프로젝트에서 "Copy to Output Directory" 처리 [1]
11024정성태8/12/201625547오류 유형: 350. "nProtect GameMon" 실행 중에는 Visual Studio 디버깅이 안됩니다! [1]
11023정성태8/10/201627281개발 환경 구성: 293. Azure 구독 후 PaaS 서비스 만들어 보기
11022정성태8/10/201627793개발 환경 구성: 292. Azure Cloud Service 배포시 사용자 정의 작업을 추가하는 방법
11021정성태8/10/201625149오류 유형: 349. System.Runtime.Remoting.RemotingException - Type '..., ..., Version=..., Culture=neutral, PublicKeyToken=null' is not registered for activation [2]
11020정성태8/10/201627997VC++: 98. 원본과 대상 버퍼가 같은 경우 memcpy, wmemcpy 주의점
11019정성태8/10/201644841기타: 60. 도서: 시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지 (2쇄 정오표)
11018정성태8/9/201628634.NET Framework: 600. 단일 메서드 내에서의 할당으로 알아보는 자바와 닷넷의 GC 차이점 [1]
11017정성태8/9/201629587웹: 33. HTTP 쿠키에 한글 값을 설정하는 방법
11016정성태8/7/201627887개발 환경 구성: 291. Windows Server Containers 소개
11015정성태8/7/201626363오류 유형: 348. Windows Server 2016 TP5에서 Windows Containers의 docker run 실행 시 encountered an error during Start failed in Win32
11014정성태8/6/201626975오류 유형: 347. Hyper-V Virtual Machine Management service Account does not have permission to open attachment
... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...