저는 Linux 호스트에서 VirtualBox 시스템을 복제하는 두 가지 방법을 알고 있습니다. 하나는 VirtualBox GUI를 사용하고 VirtualBox의 파일 메뉴에서 어플라이언스로 내보내고 다시 가져오는 것입니다.
다른 하나는 가상 디스크 컨테이너 파일만 복제하는 것입니다.
VBoxManage clonevdi /mnt/md1/original/root-fs.vdi /mnt/md1/cloned/root-fs.vdi
(에서 가져옴http://forums.virtualbox.org/viewtopic.php?p=853#p858)
편집: 이것은 이미 ~/VirtualBox/VirtualBox.xml의 일부인 VDI 파일에서는 작동하지 않는 것 같습니다. 오류 메시지가 나타납니다.
오류: 하드 디스크 '/mnt/md1/original/root-fs.vdi'가 UUID {96a1462b-c30a-4911-a954-d9093122f083}에 등록할 수 없습니다. UUID가 {96a1462b-c30a-4911-a954-d9093122f083}인 vdi'가 미디어 레지스트리('/home/mit/.VirtualBox/VirtualBox.xml')에 이미 존재합니다.
나중에 새 VM을 생성하고 복제된 가상 디스크 컨테이너를 사용해야 합니다.
파일 시스템 명령을 사용하여 가상 디스크 컨테이너 파일과 구성 파일을 복사하여 VM을 복제하고 나머지 작업을 수동으로 수행하는 것도 가능합니까?
~/VirtualBox/VirtualBox.xml을 수동으로 편집하고 새 디스크와 새 머신을 삽입해야 합니다.
UUID만 만들 수 있나요? 아니면 어떻게 작동하나요?
나는 컴퓨터를 자유롭고 신속하게 백업, 복원, 이동 또는 복제할 수 있는 이러한 하드코어한 작업 방법을 매우 선호합니다. 아니면 더 좋은 방법이 있나요?
답변1
다음 명령을 사용하여 vdi의 UUID를 변경할 수 있습니다.
VBoxManage internalcommands setvdiuuid disk.vdi
또는 VBox V4.x를 최소 4.0.10까지 사용하는 경우
VBoxManage internalcommands sethduuid disk.vdi
그런 다음 GUI를 사용하여 새로운 '고유' 디스크를 가져옵니다.
특정 VirtualBox 시스템을 복제하려면 해당 장비를 만든 다음 사용하는 것이 더 나을 것입니다. 어플라이언스를 만들려면 GUI 내보내기 어플라이언스 기능이나 vboxmanage export
명령을 사용하십시오. 그런 다음 GUI 가져오기 기기 기능이나 vboxmanage import
명령을 사용하여 결과 기기를 가져올 수 있습니다.
답변2
또는 machineid에 대한 올바른 uuid를 사용하여 "Virtualbox.xml" 설정 파일을 편집할 수 있습니다. 한 호스트에서 다른 호스트로 가상 머신을 이동하는 데 큰 도움이 되었습니다(두 호스트 모두 64비트 Linux이므로 Windows나 Mac으로 이동했는지 여부는 알 수 없음).http://sickel.net/blogg/?p=1581자세한 내용은.
어떤 이유로 원래 호스트의 vboxmanager를 실행할 수 없는 경우에도 작동합니다.