Я удалил два виртуальных диска из виртуальной машины VirtualBox неправильно. Я удалил их из гостевой конфигурации, но забыл удалить их из списка носителей и удалил файлы и каталоги из файловой системы, поэтому я вижу диски как ошибочные в списке носителей. У них есть связанные снимки, поэтому я получаю ошибки об их использовании. Если я пытаюсь удалить связанные снимки через графический интерфейс или vboxmanage
получаю это сообщение об ошибке:
VBoxManage.exe: error: VD: error VERR_PATH_NOT_FOUND opening image file [location]
Конечно, снимки тоже исчезли (это были старые файлы vmdk, которые я смонтировал, так что снимки могут быть даже не настоящими). Как мне вручную удалить эти записи-призраки из моей конфигурации VirtualBox? Я подозреваю, что есть файл конфигурации или запись в реестре, но я не уверен, где искать.
решение1
Надеюсь, это кому-нибудь поможет.
cat ~/.config/VirtualBox/VirtualBox.xml | grep your_roguedisk.vdi
Получите вывод UUID.
$ vboxmanage closemedium disk "{d89ef84a-d754-4da2-b2a1-cc37063d0c6d}" --delete
решение2
Ошибка выглядит как на следующем снимке экрана:
VERR_PATH_NOT_FOUND
означает, что указанный путь к файлу недействителен. После любой операции с VBoxManage VirtualBox сохраняет путь к файлу в файле глобальной конфигурации. Файл представляет собой файл формата XML. VirtualBox хранит данные глобальной конфигурации в следующем каталоге:
- Linux и Oracle Solaris:
$HOME/.config/VirtualBox/VirtualBox.xml
- Окна:
%UserProfile%\.VirtualBox\VirtualBox.xml
илиC:\Users\UserName\.VirtualBox\VirtualBox.xml
- Mac OS X:
$HOME/Library/VirtualBox/VirtualBox.xml
Этот файл содержит конфигурацию каждой виртуальной машины. Итакподдержите этоперед редактированием. Откройте этот VirtualBox.xml
файл в любом текстовом редакторе. Найдите путь к файлу, который вы хотите удалить. Обычно путь находится в <HardDisk/>
теге. Например, формат будет таким:
<HardDisks>
<HardDisk uuid="{3761d018-e224-45d4-aa61-764d2c408712}" location="F:/test.VHD" format="VHD" type="Normal"/>
<HardDisk uuid="{9f4f1f1c-f4c9-4773-a0b3-f0c52f699142}" location="F:/test.VMDK" format="vmdk" type="Normal"/>
</HardDisks>
Удалите всю строку тега, иначе VBox выдаст ошибку. Вот почему сделайте резервную копию этого файла перед внесением любых изменений. Для получения более подробной информации см.Документация VirtualBox: 10.1.3. Глобальные данные конфигурации.
решение3
Вдохновленный первым ответом, который не сработал, я нашел решение. Решение заключается в том, чтобы остановить VirtualBox, затем перейти в каталог для (или каждой) отдельной виртуальной машины, которая ссылается на образы дисков, о которых идет речь, отредактировать файл .vbox для виртуальной машины, удалить записи HardDisk (включая снимки) и затем снова запустить VirtualBox. Менеджер носителей не покажет никаких записей для этих дисков.