web-dev-qa-db-ja.com

VDIファイルがあったハードドライブが削除されたときに、VirtualBoxでVM=を削除するにはどうすればよいですか?

私はWindows 7でホストされているVirtualBoxを使用していますが、VMのVDIファイルの1つが置かれていた物理ハードドライブが完全に停止し、存在しなくなりました。

問題は、仮想ハードドライブもVM=も削除できないことです。これは、VDIファイルを削除しようとすると、VirtualBoxがファイルを見つけられないというエラーが表示され、もちろん、そのマシンが使用していたVDIファイルを最初に解放(または削除)せずにVMを削除しないでください。

更新:ストレージの添付ファイルもすべて削除しましたが、同じ理由でスナップショットを削除することはできません。ファイルが見つからない(ハードドライブが存在しないため)ことに注意してください。

誰かが解決策を知っていますか?

24
gvkv

ハードディスク上のVM xmlファイルを削除します。これらのファイルはデフォルトでC:\Users\YOUR_NAME\.VirtualBox\Machinesにあります。

削除後も、Virtualboxに奇妙なエラーメッセージが表示されます。これは、VMに関する一部の情報がC:\Users\YOUR_NAME\.VirtualBox\VirtualBox.xmlに含まれているためです。

VirtualBoxの一部のグローバル構成を失ってもかまわない場合は、このファイルを削除してください。 Virtualboxは、存在しない場合は別のものを作成します。

特定のVMを削除するだけの場合は、一部のxmlエディターでVirtualbox.xmlを編集する必要があります(メモ帳は問題ありません。構文の強調表示があるため、notepad ++の方が適しています)。

次のフィールドがあります。

<MachineRegistry>
  <MachineEntry uuid="UUID" src="Machines\MACHINE_NAME\MACHINE_NAME.xml"/>
</MachineRegistry>
<MediaRegistry>
  <HardDisks>
    <HardDisk uuid="UUID" location="HardDisks\DISC_NAME.vdi" format="VDI" type="Normal"/>
  </HardDisks>
  <DVDImages>
    <Image uuid="UUID" location="C:\IMAGES\IMAGE.iso"/>
  </DVDImages>
  <FloppyImages/>
</MediaRegistry>

目的のVMからMachineEntryを削除します。 VMが1つだけあり、すべてを削除したい場合は、タグを空のままにします。次に例を示します。

<MachineRegistry/>
<MediaRegistry>
  <HardDisks/>
  <DVDImages/>
  <FloppyImages/>
</MediaRegistry>

...これで完了です。ここですべてテストしたところ、問題なく動作しました。問題を回避したい場合は、VirtualBoxおよび特定のVMからxml構成ファイルをバックアップしてください。

(スナップショットについては触れませんでしたが、同じ原理だと思います。)

21
GmonC

上記の手順では問題は解決しませんでした。すべてではなく、特定のマシンを削除したかったのです。このファイルに特定のマシンのMachineEntryがありませんでした:C:\Users\YOUR_NAME\.VirtualBox\VirtualBox.xml

しかし、マシンは依然としてVirtual Media Managerに表示されていたため、ここから削除できませんでした。

VirtualBoxの再起動も機能しませんでした。

機能したもの:再起動中VBoxSVC.exeプロセスを実行してからVirtuaBboxを再起動します。

3
afaf12

最初に、その仮想マシンのスナップショットを削除します。次に、仮想マシンの設定を開き、[ストレージ]タブに移動し、IDE Controllerの下にあるvdiファイルを右クリックして、[アタッチメントの削除]をクリックします。これで、仮想マシンからVDIを削除できるようになります。メディアマネージャー。

enter image description here

2
Om Nom Nom