Назад | Перейти на главную страницу

Перемещайте и клонируйте машины VirtualBox с помощью команд файловой системы

Я знаю 2 способа клонирования машины VirtualBox на хосте Linux: один - использовать графический интерфейс VirtualBox и экспортировать и повторно импортировать как устройство (в меню файлов VirtualBox).

Другой - клонирование только файлов контейнера виртуального диска:

VBoxManage clonevdi /mnt/md1/original/root-fs.vdi /mnt/md1/cloned/root-fs.vdi

(Взято из http://forums.virtualbox.org/viewtopic.php?p=853#p858 )


Изменить: похоже, это не работает для файлов VDI, которые уже являются частью ~ / VirtualBox / VirtualBox.xml, я получаю сообщение об ошибке:

ОШИБКА: не удается зарегистрировать жесткий диск '/mnt/md1/original/root-fs.vdi' с UUID {96a1462b-c30a-4911-a954-d9093122f083}, поскольку жесткий диск '/ mnt / md1 / original / root-fs. vdi 'с UUID {96a1462b-c30a-4911-a954-d9093122f083} уже существует в реестре носителей (' /home/mit/.VirtualBox/VirtualBox.xml ')


После этого мне пришлось бы создать новую виртуальную машину и использовать клонированные контейнеры виртуальных дисков.

Можно ли также клонировать виртуальную машину, скопировав файлы contianer виртуального диска и файлы конфигурации с помощью команд файловой системы, а все остальное сделать вручную?

Мне пришлось бы вручную отредактировать ~ / VirtualBox / VirtualBox.xml и вставить новый диск и новую машину:

Могу я просто придумать UUID или как это будет работать?

Я бы очень предпочел этот хардкорный метод работы, поскольку он позволяет мне быстро и быстро создавать резервные копии, восстанавливать, перемещать или клонировать машины. Или есть лучший способ сделать это?

Вы можете изменить UUID vdi с помощью команды

VBoxManage internalcommands setvdiuuid disk.vdi

или если вы используете VBox V4.x по крайней мере до 4.0.10

 VBoxManage internalcommands sethduuid disk.vdi

затем с помощью графического интерфейса импортируйте новый «уникальный» диск.

Если вы хотите клонировать конкретную машину VirtualBox, вам, вероятно, лучше создать из нее устройство, а затем использовать. Чтобы заставить устройство использовать функцию GUI Export Appliance или vboxmanage export команда. Полученное устройство можно затем импортировать с помощью функции GUI Import Appliance или vboxmanage import команда.

Или вы можете отредактировать установочный файл «Virtualbox.xml», указав правильные uuid для идентификатора машины. Отлично сработал для меня, перемещая виртуальную машину с одного хоста на другой (оба хоста являются 64-битными Linux, не знаю, работал ли он, например, с Windows или Mac) см. http://sickel.net/blogg/?p=1581 для подробностей.

Это работает, даже если vboxmanager на исходном хосте по какой-то причине не может быть запущен.