このクイックヒントは、LinuxのVirtualBoxで「UUIDのあるハードディスクがすでに存在する」問題を修正するのに役立ちます。今日、私はVirtualboxVMの1つをKVMに移行しようとしました 。次のコマンドを実行して、virtualboxVDIイメージをRAW形式に変換しました。
$ vboxmanage clonehd --format RAW /home/sk/VirtualBox\ VMs/CentOS\ 8\ Server/CentOS\ 8\ Server.vdi CentOS_8_Server.img
そして、私はこのエラーを受け取りました:
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%... Progress state: NS_ERROR_INVALID_ARG VBoxManage: error: Failed to clone medium VBoxManage: error: Cannot register the hard disk '/home/sk/CentOS_8_Server.img' {894f84e2-dda6-41ab-aea6-387bc60e0fe4} because a hard disk '/home/sk/CentOS_8_Server.img' with UUID {afff3db8-b460-4f68-9c02-0f5d0d766c8e} already exists VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBoxWrap, interface IVirtualBox VBoxManage: error: Context: "RTEXITCODE handleCloneMedium(HandlerArg*)" at line 1071 of file VBoxManageDisk.cpp
古いRAW画像を削除して仮想ディスクを再変換しようとしましたが、それでも同じエラーが発生しました。
VirtualBoxの「UUIDのあるハードディスクがすでに存在する」問題を修正
VirtualBoxフォーラムを調べた後、この問題の実際の原因を見つけました。数日前、vboxmanageコマンドを使用して同じVDI仮想ディスクをRAW形式に変換しましたが、今日、Virtualboxメディアマネージャーから適切に解放せずに仮想ディスクを削除しました。そのため、Virtualboxボックスは、同じUUIDで既に登録されている仮想ディスク出口があると見なし、新しい仮想ディスクの作成を拒否します。これを修正するには、登録済みのメディアを解放してから削除する必要があります。
メディア(ハードディスクまたはCD-ROM)のリリースと削除には、次の2つの方法があります。
- voxmanageコマンドを使用する
- 仮想メディアマネージャーの使用。
Vboxmanageコマンドでメディアを解放する
コマンドラインからハードディスクメディアを適切に解放するには、次のvboxmanageコマンドを実行します。
$ vboxmanage closemedium disk afff3db8-b460-4f68-9c02-0f5d0d766c8e
この「afff3db8-b460-4f68-9c02-0f5d0d766c8e」UUIDを実際のディスクのUUIDに置き換えます。 UUIDは、エラーメッセージ自体に示されています。
仮想メディアマネージャーを使用してメディアをリリース
VirtualBoxアプリケーションを開き、ファイル->仮想メディアマネージャーに移動します 。
[仮想メディアマネージャー]ウィンドウから、削除するハードディスクを選択し、メニューバーの[削除]ボタンをクリックします。
VirtualMediaManagerとVirtualboxのメインウィンドウを閉じます。これで、VDI仮想ディスクを問題なくRAW画像に変換できるようになりました。
関連記事:
- VirtualBoxエラー– UUIDが既に存在するため、DVDイメージを登録できません