Вопрос или проблема
Я скопировал весь каталог виртуальной машины VirtualBox (версия 5.1.38) с моего локального компьютера на удаленный компьютер. Проблема в том, что жесткий диск, настроенный в ВМ, все еще указывает на путь к каталогу на моем локальном компьютере. Когда я пытаюсь добавить его снова как новый жесткий диск, я получаю следующую ошибку –
$ VBoxManage modifyvm "Ubuntu 18.04.3" --hda /new/path.vdi
VBoxManage: error: Cannot register the hard disk '/new/path.vdi' {fb872a9f-bf14-4119-a5a4-22b2f823fafc} because a hard disk '/old/path.vdi' with UUID {fb872a9f-bf14-4119-a5a4-22b2f823fafc} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBoxWrap, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 179 of file VBoxManageDisk.cpp
Я искал в руководстве, но не нашел способа удалить/отменить регистрацию старого жесткого диска или обновить его путь. Как изменить путь жесткого диска, чтобы он указывал на новое расположение (или удалить запись со старым местоположением и зарегистрировать новую)?
Редактировать: у меня нет доступа к графическому интерфейсу VirtualBox на удаленной машине.
В настройках хранилища виртуальной машины удалите старый диск, а затем добавьте диск, находящийся в новом месте.
“Проблема в том, что жесткий диск, настроенный в ВМ, все еще указывает на путь к каталогу на моем локальном компьютере”
-
Отредактируйте файл .vbox, чтобы он содержал новый полный путь ВМ и жесткого диска ВМ
-
Отредактируйте с помощью VBoxManage новый путь к жесткому диску, в зависимости от случая.
Пример:
[root@afk base]# VBoxManage modifymedium disk 2a635efd-968e-4950-b826-7b9b64fd9c7a --setlocation=/VMs/base/alma8/alma8.vdi
Set new location of medium with UUID 2a635efd-968e-4950-b826-7b9b64fd9c7a finished
[root@afk base]#
Ответ или решение
Чтобы изменить путь к образу VDI в VirtualBox с использованием VBoxManage, необходимо выполнить несколько шагов. Опишу процесс подробно, чтобы вы легко могли роешить возникшую проблему.
-
Деинформация старого жесткого диска:
Прежде всего, необходимо удалить или деинформировать старый жесткий диск, чтобы он не мешал обновлению пути к новому расположению VDI. Для этого используйте следующую команду:VBoxManage closemedium disk UUID
Здесь UUID – это уникальный идентификатор диска, который можно узнать из сообщения об ошибке, или командой:
VBoxManage list hdds
В ответе вы увидите список всех зарегистрированных дисков с их UUID.
-
Изменение пути к VDI:
После того как вы удалили информацию о старом диске, необходимо указать VirtualBox новый путь к вашему VDI файлу. Используйте следующую команду:VBoxManage modifymedium disk UUID --setlocation /новый/путь/к/вашему.vdi
Здесь, замените
UUID
на идентификатор вашего виртуального диска и/новый/путь/к/вашему.vdi
на новый путь к файлу VDI. -
Редактирование файла .vbox:
Иногда может потребоваться внести ручные изменения в файл конфигурации виртуальной машины.vbox
. Для этого:- Найдите файл
.vbox
, связанный с вашей виртуальной машиной. - Откройте его в любом текстовом редакторе.
- Найдите секцию, описывающую конфигурацию жесткого диска, и измените путь на новый, актуальный для вашей системы.
- Найдите файл
-
Проверка новой конфигурации:
После выполнения всех изменений, проверьте правильность новых настроек, запустив виртуальную машину:VBoxManage startvm "Имя вашей ВМ"
Эти шаги помогут вам успешно изменить путь к образу VDI в VirtualBox. Следуйте инструкциям внимательно, чтобы избежать ошибок. Мы рекомендуем всегда создавать резервные копии перед внесением изменений в конфигурационные файлы VM.