40

Недавно я получил новую рабочую станцию и переместил виртуальные машины VirtualBox и VMWare Player со старого компьютера на новый.

Виртуальные машины VMWare Player - это совсем несложно: перейдите в «Файл -> Открыть виртуальную машину…», найдите файлы .vmx со старого компьютера и вуаля! Это работает и работает. Все необходимые файлы, очевидно, находятся в одной папке.

С VirtualBox, кажется, просто нет способа сделать это. Похоже, что виртуальные машины привязаны к исходному хосту каким-то волшебным / невидимым способом, таким как записи реестра и т.д.

12 ответов12

47

Предыдущие ответы выглядят устаревшими.

Начиная с версии 4 Oracle VirtualBox Manager, опция "Добавить" скрыта в меню "Машина" (меню операционной системы). Просто выберите Добавить и перейдите к нужному файлу .vbox. Это прекрасно работает, даже если файл vbox находится на внешнем диске: если диск впоследствии удаляется, пропущенные поля просто помечаются как "недоступные".

7

В папке машины находится файл * .vbox. Перетащите его в список виртуальных машин в VirtualBox.

5

Импорт существующих виртуальных машин с другого хоста в VirtualBox 4 и выше на хостах Windows:

  1. Импорт виртуального диска vdi:

    1. Зайдите в меню: * Файл ⇨ Диспетчер виртуальных носителей.

    2. Перетащите [vm_name].vdi в список.

  2. Добавление импортированного компьютера в список менеджера vbox:

    1. Дважды щелкните файл [vm_name].vbox в каталоге vm, чтобы добавить этот компьютер в список менеджера vbox.

    2. Дважды щелкните по [vm_name].vbox в списке менеджера vbox, чтобы запустить устройство.

  3. Sidenotes:

    1. Если виртуальная машина вышла из более старой версии vbox, у вас будет [vm_name].xml внутри подкаталога вместо [vm_name].vbox в том же каталоге, что и [vm_name].vdi .

    2. Скопируйте [vm_name].xml в тот же каталог, что и [vm_name].vdi и переименуйте его в [vm_name].vbox .

    3. Перейдите к шагу 1.1 или 2.1 в зависимости от действий, которые вы уже предприняли.

4

Если вы хотите использовать существующий виртуальный жесткий диск и «открыть» его в Virtual Box - вам нужно перейти в «Файл> Диспетчер виртуальных носителей» и выбрать «Добавить».

Перейдите к существующему диску и выберите «ОК». Это регистрирует диск с виртуальной коробкой. Теперь вам нужно подключить этот диск к новой или существующей виртуальной машине, чтобы фактически использовать ее.

3

По умолчанию VirtualBox загружает свои данные конфигурации из следующих путей:

  • В Windows это %HOMEDRIVE%%HOMEPATH%\.VirtualBox ; обычно что-то вроде C:\Documents and Settings\Username\.VirtualBox .
  • В Mac OS X это $HOME/Library/VirtualBox .
  • В Unix-подобных системах (Linux, Solaris) это $HOME/.VirtualBox .

Это означает, что машины являются специфическими для вошедшего в систему пользователя. Если вам нужно установить общее место для хранения компьютеров между разными пользователями, вы можете переопределить расположение по умолчанию, установив переменную среды VBOX_USER_HOME . VirtualBox будет использовать путь в этой переменной в качестве хранилища для данных конфигурации виртуальной машины.

См. Раздел справки VirtualBox о данных конфигурации VirtualBox для получения дополнительной информации.

2

Если вы работаете на Unix-подобном компьютере, вы можете сделать это:

find /path/to/vms -name "*.vbox" -exec VBoxManage registervm {} \;

Вам просто нужно помнить, чтобы предоставить полный путь к файлу .vbox. Если вы укажете относительный путь, он будет глупо предполагать, что он относительно вашей домашней папки.

Например, я сделал это после восстановления моей рабочей станции:

$ find /store/vm -name "*.vbox" -exec VBoxManage registervm {} \;

Он нашел и перерегистрировал все мои виртуальные машины.

2

В Mac OS X просто откройте файл .vbox (из Finder), и он будет добавлен в список виртуальных машин.

2

Я не уверен, что вижу здесь проблему. В VirtualBox, если вы открываете новую виртуальную машину (которую вы, возможно, создали на другом компьютере), вы используете File/Import Appliance, а затем найдите файл для открытия. После ввоза его можно найти в главной панели ВМ.

Если вы создали виртуальную машину на том же компьютере, она уже находится на левой панели главного окна программы.

Это может отличаться от того, к чему вы привыкли, но я не понимаю, почему это расстраивает ...

1

На Debian я редактировал ~/.VirtualBox/VirtualBox.xml а также machine.xml я хочу импортировать: ~/VirtualBox VMs/$machine/$machine.xml

Закройте VirtualBox, добавьте в VirtualBox.xml :

<MachineRegistry>
  <MachineEntry uuid="{$find-in-machine.xml}" src="/$fullpath-to-machine.xml"/>
</MachineRegistry>

Перезапустите VirtualBox, добавьте сеть только для хоста, если необходимо, импортируйте ext pack, если необходимо (https://www.virtualbox.org/wiki/Downloads), установите дополнения virtualbox, если необходимо: sudo apt-get install virtualbox-guest-additions-iso ,

Запустите свою виртуальную машину.

1

Ни одно из приведенных выше решений не помогло мне, потому что я пытался импортировать файл VDI, созданный в VirtualBox 3.1.6, в VirtualBox 4.32, работающий на другом компьютере. Это автономный файл, и нет связи с другим VDI. Я продолжал получать ошибку:

Parent medium with UUID {a9dccef3-45f8-45ff-835e-a2b6e7279bac} of the medium 
'c:\Disks\Windows.2003.R2.Enterprise.SQL.Express.192.168.56.222.Trusted.vdi' 
is not found in the media registry

Я даже импортировал тот же vdi под VirtualBox 3.1.6, а затем снова попытался использовать VBoxManage clonehd, чтобы посмотреть, смогу ли я избавиться от ошибки, но это тоже не сработало.

В конце концов я просто отредактировал.VirtualBox/VirtualBox.xml вручную, добавив

<HardDisk uuid="{43ea34ba-6d72-413e-8b37-32f475927ace}" location="C:/Disks/Windows.2003.R2.Enterprise.SQL.Express.192.168.56.222.Trusted.vdi" format="VDI" type="Normal"/>

(UUID был получен с помощью VBoxManage showvhinfo в VirtualBox 3.1.6.)

И это, наконец, решило проблему, то есть я смог создать новый сеанс VirtualBox с помощью vdi.

Надеюсь, что эта заметка поможет тем, кто сталкивается с той же проблемой.

1

По поводу таких ошибок:

Не удалось открыть жесткий диск V:\ProgramData\VirtualPC\CleanTesting_XP sp1.vhd. Родительский носитель с UUID {199e419e-a076-d811-81ef-8eeb0865d5ed} носителя 'V:\ProgramData\VirtualPC\CleanTesting_XP sp1.vhd' не найден в реестре носителей ('C:\Users\Clay/.VirtualBox\VirtualBox.xml ').

VirtualBox, кажется, кэширует UUID, связанный с именем файла виртуального диска. Это не в файле сообщение говорит; это должно быть сохранено в другом месте. Очевидно, VirtualBox 4 больше не поддерживает отмену регистрации / регистрации дисковых команд.

В конце концов я обнаружил, что если я изменил имя файла VDI, то он больше не соответствует кэшированной записи, и VirtualBox не жалуется.

0

В VirtualBox 4.3.8, работающем на хосте Win 7, решение работает очень гладко, дважды щелкнув файл .vbox машины - он даже нашел соответствующие диски и связал их. Ранее я пробовал параметр командной строки registervm, но тот жаловался на то, что подключенный жесткий диск не найден, как и предсказывает документация. Затем я связал тип файла виртуального жесткого диска .vdi с Virtualbox.exe, не уверенный, помогло ли это.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .