modifyhd 명령으로 동적 VDI의 크기를 조정할 수없는 이유는 무엇입니까?


28

가상 머신의 하드 디스크 크기를 늘리려면 어떻게합니까 ?를 참조하십시오 .

다음과 같은 명령으로 작동해야합니다

VBoxManage modifyhd xp.vdi --resize 2000

VDI의 크기가 고정되어 있으면 다음 오류가 발생할 수 있습니다.

~/VirtualBox VMs/xp$ VBoxManage modifyhd xp.vdi --resize 2000
0%...
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

이에 대한 토론과 해결책이 여기 있습니다 .

그러나 VDI가 동적 인 동안 오류가 발생합니다.

~/VirtualBox VMs/xp$ VBoxManage showhdinfo xp.vdi
UUID:           8880dc58-cd0c-4ffb-a583-f8dd50eda98e
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /home/cip/VirtualBox VMs/xp/xp.vdi
Storage format: VDI
Format variant: dynamic default
Capacity:       8192 MBytes
Size on disk:   4693 MBytes
In use by VMs:  xp (UUID: e2b70963-3c26-41cf-88f6-4e03ca721e2d)

왜 그런가요?


Ubuntu 16.04LTS 및 동적 vdi와 동일한 문제가 있습니다. 매우 이상하다
— Luckyrings

답변:


26

사용하려면 VBoxManage modifyhd다음과 같은 경고가 있습니다.

  • 드라이브는 .VDI 또는 .VHD 형식이어야합니다.
  • 드라이브는 고정 형식이 아닌 동적 형식이어야합니다 (복제 디스크를 생성하여 고정 디스크를 동적으로 변환 할 수 있음).
  • 드라이브 크기는 물리적 크기가 아닌 논리적 크기 에만 영향을 미칩니다 .
  • 실제 크기보다 작거나 같은 드라이브를 축소 할 수 없습니다.
  • 물리적 크기 를 줄이려면 사용하지 않는 드라이브 공간을로 채워야 0합니다.
  • 물리적 크기를 줄이기 전에 Windows VDI를 조각 모음해야 할 수도 있습니다.

위의 예에서는 물리적 크기가 4693MB에서 2000MB 인 동적 디스크의 크기를 조정하려고했으나 불가능했습니다. 따라서 오류가 발생했습니다.


1
나도 여기에서 넘어졌다 얼마나 아파요?
— nicolas

2
고정 된 형식으로 드라이브를 수정하려면 @ ripper234의 답변을 따르십시오
— Sharun

당신이 필요로하는 모든 정보를 가지고 내 대답을 확인하고 나는 그것이 작동하는지 증명 수
— 마우 그라시아 구티에레즈

나는 2 년 전에이 이미지를 만들었고, 오랫동안 고정 된 크기이고 동적이 아닌 것을 잊어 버렸습니다. 당신의 대답으로 그것을 읽은 것은 나에게 상기시켰다. 나는 왜 이것을 할 수
— 없었는

감사합니다. 리눅스의 경우 리눅스 pvresize를 위해 그 공간을 사용하기 위해 명령 을 실행하는 것을 잊지 마십시오
— Maksim Luzik

23

이 해결 방법은 저에게 효과적이었습니다.

  1. 기계를 종료
  2. 원하는 크기의 관리 인터페이스를 통해 새 드라이브를 만듭니다
  3. 플래그 와 함께 VBoxManage clonemedium 사용--existing

    VBoxManage clonemedium <source-guid> <destinatin-guid> --existing
    

참고 : 이제 새 디스크에 초과 공간이 할당되지 않은 상태이므로 gparted를 사용하여 크기를 최대로 확장해야합니다.

왜 VirtualBox 녀석들이 던지기 대신 이것을 구현하기 위해 위의 것을 사용할 수 없었는지 모르겠습니다 VBOX_E_NOT_SUPPORTED... 적어도 이것에 연결 :)


1
Windows에서 초과 공간을 어떻게 할당 할 수 있습니까?
— Ken

4
@ 당신이 알아 낸지 확실하지 않습니다; 시작-> 실행-> diskmgmt.msc를 시작하고 C :( 또는 기본 드라이브가 무엇이든)를 마우스 오른쪽 버튼으로 클릭하고 확장을 선택하십시오.
— Trent

2
도움이되었습니다. GUID가 아니라 드라이브 파일 이름으로
— Luckyrings

3
@ ripper234 세 가지 단계는 깊이있는 설명이 필요합니다. 나 같은 사람들은 자신이하고있는 일을 잘 모르고 있습니다. 2)에서 우리는 새로운 고정 디스크를 만들거나 무엇입니까? .vdi .vdmk ?? 적절한 예를 들어 설명해주십시오. 또한 3) clonehd와 달리 clonemedium은 무엇을합니까? 두 개의 guid는 어디에서 왔으며, 특히 대상의 guid는 우리가 복제하더라도 이미 존재합니까? 감사합니다
— mwarren

고맙습니다. 이제 여기에 askUbuntu 임에도 불구하고 Windows 사용자로 안내되었으므로 VBoxManage의 Windows 버전에서는 VM 대신 가상 하드 드라이브 경로를 입력해야합니다. GUID.
— Sean Burchett

4

여기에 전체 과정이 있습니다. 가능한 한 자세하게 설명하겠습니다.

  1. 크기가 커질 머신이 "종료"또는 다른 상태가 아닌 "종료"상태인지 확인하십시오.

내 경우에는 32GB 크기의 시스템이며 SMALL VM 이라고합니다.

  1. 원하는 새 크기로 새 가상 머신 생성

필자의 경우 새로운 VM 내부의 작은 시스템의 내용을 복원하면서 새로운 70GB 가상 시스템을 만들기로 결정 했으며이를 LARGE VM이라고합니다.

  1. 명령을 실행 VBoxManage list hdds하거나 Virtual Media Manager 를 열어 SMALL VM 의 GUID (원본) 및 LARGE VM 의 GUID (대상) 를 얻습니다.

이러한 GUID를 사용하여 다음 명령을 빌드하십시오.

VBoxManage clonemedium SMALL_VM_GUID LARGE_VM_GUID-기존

내 경우에는 ORIGIN-SMALL VM 은 : 39143127-42b6-478a-afb2-5e58f14218b

내 경우에는 DESINATION-LARGE VM 은 다음과 같습니다. bb808b5b-b88c-49b2-a646-3414af906d84

물론 당신의 GUID는 나의 것과 다를 것입니다

GUID를 뒤집지 마십시오. 그렇지 않으면 새로운 기계가 기존 기계의 내용을 대체합니다 !!!!

출발지와 목적지를 혼합하지 않았는지 확인한 후 다음 명령을 실행하십시오.

클론 관리 매체 39143127-42b6-478a-afb2-5e58f14218b2 bb808b5b-b88c-49b2-a646-3414af906d84-기존

0 % ... 10 % ... 20 % ... 30 % ... 40 % ... 50 % ... 60 % ... 70 % ... 80 % ... 90 % ... 100 %

'VDI'형식으로 생성 된 복제 매체 UUID : bb808b5b-b88c-49b2-a646-3414af906d84

  1. 2 단계에서 생성 한 새 LARGE VM 을 시작하십시오 .

  2. 컴퓨터 관리 창 도구에서 기계에 실제로 사용되지 않은 / 포맷되지 않은 공간이 더 있는지 확인하십시오.

  3. 원하는 경우 C 드라이브에서 "chkdsk"를 실행하여 모든 준비가 완료되었는지 확인할 수 있습니다 ( 대형 VM 에서 두 번 재부팅해야 할 수 있음 )

  4. gparted-live * .iso를 사용하여 새 가상 머신에 "삽입"하고 재부팅하십시오.

  5. 갈라진 환경으로 부팅

  6. 파티션을 키우고 변경 사항을 저장하십시오

  7. gparted-live * .iso를 "꺼내기"하여 Windows로 다시 부팅

  8. 컴퓨터 관리 창 도구에서 컴퓨터에 이제 더 큰 C 드라이브가 있는지 확인하여 특정 문제를 해결하십시오.

이 프로세스의 스크린 샷이 있었지만 Windows 가상 시스템에서 여유 공간을 확보하기 위해 "서둘러"인 사람들에게 크고 위협적인 답변을 제공하기 때문에 포함하지 않기로 결정했습니다.


가이드 주셔서 감사합니다. 3 단계에서 GUID를 어디에서 얻습니까? Virtual Media Manager가 무엇인지 잘 모르겠습니다.
— A.Wan

3
신경 쓰지 마, 내가 그것을 얻은 것 같아요VBoxManage list hdds
— A.Wan

- A.Wan @ 이것은 가상 미디어 관리자입니다 google.com.co/...
— 마우 그라시아 구티에레즈
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.