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

Как подключить виртуальный жесткий диск с помощью VBoxManage?

Каков наилучший метод настройки виртуального жесткого диска (VDI) первичного контроллера для существующей виртуальной машины?

Изменится ли синтаксис, если VDI действительно является дочерним разностным диском другого родительского диска? Вам нужно каким-то образом присоединить родительский VDI, а затем дочерний VDI?

Ситуация:

У меня есть виртуальная машина - я хочу заменить жесткий диск, который она использует для загрузки - на другой нормальный виртуальный жесткий диск или, возможно, на другой диск. Можно ли это сделать с помощью VBoxManage?

Довольно старый вопрос, но вот как я это делаю:

VBoxManage storageattach my-vm-name \
                         --storagectl "SATA Controller" \
                         --device 0 \
                         --port 0 \
                         --type hdd \
                         --medium /path/to/my-new.vdi

Предполагается, что вы хотите заменить старый диск. Если вы хотите просто добавить еще один диск, используйте другой порт, например 1, если у вас только 1 диск (на порту 0). Обратите внимание, что вы также можете добавлять диски (или образы cd / dvd) в «IDE Controller».

Я считаю, что это должно быть сделано для виртуального жесткого диска.

VBoxManage modifyvm winxp-web-dev --hda "/home/vbox/.VirtualBox/HardDisks/my_new_disk.vdi"

(Вот как я это делаю, когда создаю виртуальные машины из консоли)

Просто хочу добавить в @calas виртуальную машину, управляемую бродягой (запустить в папке виртуальной машины и заменить sandbox_default_ с префиксом имени вашей виртуальной машины):

VBoxManage storageattach `VBoxManage list vms | grep \"sandbox_default_ | awk '{print $2;}'` --storagectl SATA --port 0 --type hdd --medium box-disk1.vmdk

Сначала вам нужно добавить контроллер на вашу виртуальную машину:

vboxmanage storagectl YourVMNameOrID --name "SATA Controller" --add sata --controller IntelAHCI --portcount 1 --bootable on

а затем прикрепите образ виртуального диска к контроллеру хранилища:

vboxmanage storageattach YourVMNameOrID --storagectl "SATA Controller" --device 0 --port 0 --type hdd --medium YourVirtualDiskImage.vdi 

Я не уверен, что вы можете сделать это с помощью VBoxManage, я всегда менял его через графический интерфейс после использования CloneHD, вы можете ответить, что в VBoxManage Manuel

В случае, если это полезно для всех, кто работает с разделом BootCamp, который вам нужно создавать новый .vmdk для каждой загрузки, мне пришлось сделать это, чтобы прикрепить образ и избежать раздражающей проблемы несоответствия UUID:

Отключите носитель от виртуальной машины VBoxManage storage прикрепите YourVMName Here --storagectl "IDE" --device 0 --port 0 --type hdd --medium none

Таким образом, он не жалуется, когда вы удаляете средний диск VBoxManage closemedium /path/to/your/medium.vmdk

Затем, когда вы подключаете воссозданный носитель, вы не получаете ошибок контрольной суммы VBoxManage storageattach YourVMNameHere --storagectl "IDE" --device 0 --port 0 --type hdd --medium /path/to/your/medium.vmdk