답변:
vmdk 하드 디스크 백업을 종료하려면 (vwmare에서 디스크를 사용하는 데 관심이있을 수 있음) 전체 단계는 다음과 같습니다.
VBoxManage clonemedium "source.vmdk" "cloned.vdi" --format vdi
VBoxManage modifymedium "cloned.vdi" --resize 51200
VBoxManage clonemedium "cloned.vdi" "resized.vmdk" --format vmdk
위의 방법으로 하드 디스크의 크기를 최대 50GB (50 * 1024MB)로 조정할 수 있습니다.
작업을 완료하려면 드라이브 크기도 조정해야합니다! 이를 위해 gparted iso 를 다운로드 하고 해당 iso에서 부팅하여 드라이브 크기를 조정할 수 있습니다 (가상 상자 설정에서 iso를 선택).
추신 : 새 크기가 너무 작 으면 새 vdi 파일에서도 같은 오류가 발생합니다.
VBoxManage clonehd "~/path/to/symlink/packer-centos-6.5-x86_64-disk1.vmdk" "/media/k0pernikus/thatFatSlowDisk/cloned_packer-centos-6.5-x86_64-disk1.vdi"
. 실제 경로 를 지정하면 VBoxManage: error: Cannot register the hard disk
VBox가 이미 다른 곳에 정의되어 있다고 생각하기 때문에 명령으로 인해 충돌이 발생합니다 .
clonehed
의해 지원되지 않는 볼륨을 계속 생성하는 이유와 연구에 시간을 낭비 했습니다 --resize
. 에 추가 --format vdi
하는 clonehd
것이 중요 하다는 것이 밝혀졌습니다 !
vmdk를 복제 한 다음 수정하고 크기를 조정하여 vmdk의 크기를 조정할 수있었습니다.
vboxmanage clonehd "virtualdisk.vmdk" "new-virtualdisk.vdi" --format vdi
vboxmanage modifyhd "new-virtualdisk.vdi" --resize 30720
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005)
Windows에서이 명령을 실행하려고 할 때 비 관리자로서 명령 프롬프트를 실행하십시오.
virtualdisk.vmdk
과 같이 큰 따옴표를 사용하지 않고 작동했습니다 :vboxmanage clonehd virtualdisk.vmdk "new-virtualdisk.vdi" --format vdi vboxmanage modifyhd "new-virtualdisk.vdi" --resize 30720
Mac 호스트에 Windows 7 클라이언트가 있으며이 게시물이 매우 유용했습니다. 감사.
나는 gparted를 사용하지 않았다고 덧붙일 것이다. 나는 이걸했다:
단! 데이터 손실에 대한 경고와 함께 타사 도구를 사용하는 것이 좋습니다.
건배!
VBoxManage 는 트릭을 수행하지만 GBoxed 또는 다른 도구를 사용 하여 VBoxManage로 만든 여유 공간을 할당해야합니다 .
실제로 다음 명령 만 필요합니다.
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi
VBoxManage modifyhd "cloned.vdi" --resize 51200
그런 다음 Virtualbox GUI 스토리지에서 cloned.dvi를 선택할 수 있습니다.
그런 다음 가상 창을 시작하고 코드 절단 방법으로 C 디스크를 확장하십시오.
* .vdi 파일을 * .vmdk 파일로 다시 변환 할 필요는 없습니다.
이 파일은 vmdk 파일이므로 vdiskmanager
플랫폼에 사용 가능한 경우 VMWare를 사용할 수 있습니다. VMWare에는 x86 Linux, Windows 및 OS X 버전이 있습니다 .
그리고 당신은 단지 :
1023856-vdiskmanager-windows-7.0.1.exe -x 30720M Machine-disk1.vmdk
디스크를 복제 한 다음 디스크를 확장하지 않아도됩니다. 이제 단점은 추가 도구가 필요하고 vmdk는 VMWare의 디스크 형식이며 여전히 Virtualbox를 사용하고 있기 때문에 비 호환성이있을 수 있습니다.
qemu-img
작동하지만 vmdk 파일 크기 조정을 지원하는지 확실하지 않습니다. 다음과 같이 보일 것입니다 :
qemu-img resize Machine-disk1.vmdk +8G
그리고 기본 디스크 크기를 조정 한 후에도 파티션을 늘려야합니다. 이러한 모든 도구는 본질적으로 dd if=/dev/old_disk of=/dev/new_disk bs=16M
있습니다.
여기에있는 모든 솔루션을 시도했지만 아무것도 작동하지 않는 것 같습니다. 파고 몇 시간 후 나는이 블로그 게시물을 발견 하고 마술처럼 모든 것이 작동합니다. 나는 약간의 조정을해야했기 때문에 여기 수정 된 버전이 있습니다. Docker 버전 17.06.0-ce, 빌드 02c1d87로 테스트되었습니다.
개발자가 실제로 애플리케이션 컨테이너화를 시작하면 많은 이미지를 생성하고 기본적으로 Docker 가상 머신에 할당 된 20GB 하드 드라이브 공간을 빠르게 채 웁니다. Docker 가상 머신에 충분한 디스크 공간이 있는지 확인하려면 / dev / sda1의 크기를보다 합리적인 수로 조정해야합니다.
Docker 가상 머신을 중지하십시오 docker-machine stop default
.
Boot2Docker 패키지 설치 프로그램은 VirtualBox의 기본 도구 크기를 조정할 수없는 VMDK 볼륨과 함께 제공됩니다. Docker 디스크 볼륨의 크기를 조정하려면 먼저 기본 VMDK 볼륨에서 VDI 볼륨을 복제하십시오.vboxmanage clonehd /full/path/to/disk.vmdk /full/path/to/disk_resized.vdi --format VDI --variant Standard
.
vboxmanage modifyhd /full/path/to/disk_resized.vdi --resize <size in MB>
합니다.default
VM을 선택한 다음 상단의 "Settings"기어를 클릭하십시오.docker-machine start default
Vmware 플레이어를 사용하여 vmdk의 크기를 조정할 수 있습니다. vmdk 형식으로 유지하려는 경우 왕복 변환 (다른 게시물에 표시되지 않음)이 제거됩니다. vmdk를 vmware에 추가 할 때 프롬프트가 표시 될 때 업그레이드 형식을 클릭하지 말고 VirtualBox가이를 수락하지 않는 경우 현재 형식을 유지하십시오.
Luca 의 답변 에서 언급했듯이 필수 단계는 다음과 같습니다.
VMDK 이미지를 VDI 형식으로 복제
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi
VDI 이미지 크기 조정
VBoxManage modifyhd "cloned.vdi" --resize 51200
VMDK 형식으로 다시 복제
VBoxManage clonehd "cloned.vdi" "resized.vmdk" --format vmdk
VDI 이미지를 대신 사용할 수있는 경우 3 단계는 선택 사항입니다.
이 모든 단계는 아래의 VirtualBox 그래픽 사용자 인터페이스에서도 수행 할 수 있습니다 File -> Virtual Media Manager
. 복제하려는 드라이브를 선택한 다음을 선택하십시오 Copy
. 디스크 형식과 옵션을 선택할 수있는 대화 상자가 열립니다. VDI 이미지의 크기를 조정하려면 하단의 슬라이더를 사용하십시오 ( Properties
표시되지 않으면 클릭하십시오 ).
마지막으로 게스트 OS에서 디스크 크기를 변경해야 할 수도 있습니다.
gparted
또는 을 사용할 수 있습니다 kparted
.Windows 용 VirtualBox
가상 머신 설정 을 유지하면서 디스크 파일 크기 조정 !
cmd.exe 시작
cd
오라클 VM 버추얼의 디렉토리에 (64 비트 시스템 : "C:\Program Files\Oracle\VirtualBox\"
)
위와 같이 다음 명령을 실행하십시오.
VBoxManage clonehd "C:\path\to\source.vmdk" "C:\path_to\cloned.vdi" --format vdi
VBoxManage modifyhd "C:\path\to\cloned.vdi" --resize 51200
주소 표시 줄을 통해 Windows 탐색기와 "주소를 텍스트로 복사"를하면 필요한 경로를 얻을 수 있습니다.
Windows 시스템에서 사용자 아래의 VirtaulBox VM 디렉토리에는 VM에 대해 구성한 XML 형식의 데이터베이스 파일이 포함되어있을 수 있습니다. 이 파일의 .bak
확장자를 확장명으로 바꾸십시오 .vbox
. 다른 오류가 발생하지 않도록 원본 .vmdk
파일의 .bak
확장자를 바꾸십시오 . 이제 오류 메시지없이 세 번째 단계를 안전하게 수행하여 시스템을 다시 .vmdk
형식 으로 변환 하거나 "중복 디스크"오류를 수행 할 수 있습니다.
VBoxManage clonehd "C:\path_to\cloned.vdi" "C:\path_to\source.vmdk" --format vmdk
UID 토큰 이 제공됩니다 . Windows Command Interpetor 창에서 끌어서 강조 표시하고 Ctrl+C
키보드 단축키를 사용하여이 토큰을 복사하십시오 .
열기 .vbox.bak
메모장 ++과 같은 텍스트 편집기에서 파일을. XML과 같은 데이터베이스 파일이 제공됩니다. 다음 줄을 찾으십시오.
<VirtualBox xmlns="http://www.virtualbox.org/" version="1.16-windows">
<Machine uuid="{some uid}" name="source disk name" OSType="the_vbox_OS" snapshotFolder="Snapshots" lastStateChange="2043-03-23T00:54:18Z">
<MediaRegistry>
<HardDisks>
<HardDisk uuid="{some uid}" location="C:\path_to\source.vmdk" ...
라인에 <HardDisk uuid="{some uid}" location="C:\path_to\source.vmdk" ...
, 삭제 괄호 사이에 토큰을 이전 UID 및 붙여 넣기 명령 창에서 복사 한. 브래킷 을 제자리에 두십시오 !
이 파일을 저장하고 텍스트 편집기를 종료하십시오. .vbox.bak
파일의 이름을 바꾸어 예상 확장자를 (으)로 되돌립니다 .vbox
.
이제 .bak
디렉토리에 남아 있는 파일 을 제거하는 것이 안전합니다 . 남아있는 것은 이전에 보존 된 VirtualBox Manager 설정으로 .vmdk
업데이트 된 .vbox
데이터베이스 로 크기 가 조정 된 것 입니다.
운영 체제에 적합한 도구를 사용하여 VirtualBox VM Manager를 시작하고 VM을 실행하여 새로운 여유 공간을 채울 수 있습니다.
들어 윈도우 VM을 사용 diskpart
하는 Windows 복구 Consule (복구 파티션)에서 부팅 프롬프트 명령에서 SELECT DISK 1
, LIST PARTITION
당신의 파티션 번호를 수집 C:\
한 후, 드라이브를 SELECT PARTITION #
. 를 사용하여 EXTEND SIZE=mb
Windows C : \ 드라이브의 크기를 적절한 값으로 조정할 수 있습니다 . 복구 및 부팅 파티션을위한 공간을 확보하십시오! 섀도 복사본 및 Windows 복구 파일로 인해 새 가상 디스크 크기에서 4096MB를 빼서이 값을 얻는 것이 안전합니다.
들어 리눅스 VM을 라이브 .ISO
:의 당신은에서 찾을 수있는 VM의 디스크 파일로 부팅 할 수 gparted를 http://gparted.org/ 당신이 채울 수있는 곳에서 그것은, 바로 그래픽 사용자 인터페이스 기반 gparted를-GTK로 당신을 얻을 것이다 당신의 여유 공간.
들어 PPC / 맥 가상 머신 , Disk Utility
Finder에서 여유 공간을 채우는 당신을 asisst 것입니다,하지만 당신은 고려할 수 있습니다 gparted를 리눅스 옵션을 버추얼 해킨토시입니다 현재의 유일한 방법은에서라도을 부팅으로, 당신은 당신의 볼륨을 확장 할 수 없습니다 MacOSX로 부팅하는 동안 에 대한 VM 설정을 임시로 조정하여 gparted
부팅 할 수도 있습니다. MacOSX 파티션은 HFS
"Heaping File System"파티션으로 구분됩니다.
인터넷 때문에. ;) 끝났습니다. .vmdk
VirtualBox for Windows로 새로운 크기의 가상 디스크 이미지를 즐기십시오 !
vboxmanage list hdds
. 원하지 않는 것을 제거하려면 : vboxmanage closemedium disk <filename.vmdk>
. SATA port #, device # :을보십시오 vboxmanage showvminfo <vmName>
. 디스크를 디 테치하려면 : vboxmanage storageattach <vmName> --storagectl SATA --port <p#> --device <d#> --medium none
고정 형식인지 동적 형식 디스크인지에 관계없이 VirtualBox 디스크 크기를 조정하는 방법은 다음과 같습니다. 특히 디스크가 고정 형식 일 때 발생하는 오류를 방지합니다.
⚠️ 가상 디스크를 백업하십시오. 당신은 무엇이 잘못 될지 모릅니다.
호스트에서 :
터미널 창을 엽니 다.
Windows의 경우 : 명령 프롬프트를여십시오
cmd
.
크기를 조정하려는 가상 디스크가있는 디렉토리로 이동하십시오. 예를 들면 다음과 같습니다.
cd "My VMs"
원하는 파일 이름, 크기 (MB) 및 형식 Standard
(동적) 또는 으로 새 VirtualBox 디스크를 만듭니다 Fixed
. 예를 들어,라는 50기가바이트 고정 포맷의 디스크를 만들 수 있습니다 MyNewDisk.vdi
:
VBoxManage createmedium --filename "MyNewDisk.vdi" --size 50000 --variant Fixed
경우
VBoxManage
명령으로 인식되지 않습니다, 그것의 전체 경로를 지정합니다. VirtualBox 설치 디렉토리에 있습니다. Windows에서 위의 명령은 다음과 같습니다."C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" createmedium --filename "MyNewDisk.vdi" --size 50000 --variant Fixed
원본 디스크를 새 디스크에 복사하십시오.
VBoxManage clonemedium "MyOriginalDisk.vdi" "MyNewDisk.vdi" --existing
크기 조정이 완료되었습니다! 원하는 경우 새 디스크의 속성을 확인할 수 있습니다.
VBoxManage showmediuminfo "MyNewDisk.vdi"
새 디스크를 대신 사용하도록 가상 머신을 변경하십시오.
그런 다음 게스트 OS에서 새로 사용 가능한 공간을 사용하도록 파티션 크기를 조정해야합니다.
Docker (CoreOS) 개발 환경에 맞게 디스크 크기를 조정해야했기 때문에 여기에 있습니다.
CoreOS 문서에 따르면 OS 파티션의 크기를 조정할 필요가 없습니다. 가상 디스크의 크기를 조정 한 후 다음 지침에 따라 GParted를 통해 OS 파티션의 크기를 조정해야합니다.
빠르고 간단한 옵션 :
기존 디스크에서 새 디스크로 컨텐츠를 이동하십시오.
vboxmanage clonehd "source-disk.vmdk" "new-disk.vmdk" --existing
기계를 켜십시오
경고
새 디스크가 소스보다 짧은 경우 소스 디스크의 새 디스크 크기 위치에서 찾은 데이터 가 손실 됩니다 .
1 단계 이전에 OS 내부의 소스 디스크 끝에서 델타 공간이 할당 해제되는 것을 방지 할 수 있습니다 (델타 = 크기 (소스 디스크)-크기 (새 디스크)).
버리고 다시 시작하십시오. 이 모든 대답을 무시하십시오. 시간을 낭비하지 마십시오.
VMWare Workstation을 다운로드 / 설치 / 사용하고 현재 vmdk 파일을 기반으로 새 VM을 만든 다음 vmdk의 크기를 조정할 수 있습니다. 이 문제에 대한 자세한 내용은 VMWare 용 Google을 참조하십시오.
간단히 다음 단계를 따라야합니다.
축하합니다. 여유 공간을 즐기십시오.
이 비디오는 당신을 도울 것입니다 :
https://youtu.be/ikSIDI535L0