デフォルトでは、VirtualBoxはすべてのデータをホームディレクトリの下のディレクトリに保存します。変更方法は知っていますが、既存の画像の場所を(VirtualBox.xmlを手動で編集せずに)変更するにはどうすればよいですか?
私はWindowsで作業していますが、NTFSリンクを使用しようとは思いません。
デフォルトでは、VirtualBoxはすべてのデータをホームディレクトリの下のディレクトリに保存します。変更方法は知っていますが、既存の画像の場所を(VirtualBox.xmlを手動で編集せずに)変更するにはどうすればよいですか?
私はWindowsで作業していますが、NTFSリンクを使用しようとは思いません。
回答:
すべてのVMをまったく新しい場所に移動する場合は、次の2つの返信に従うだけです。
ここに投稿をコピーします:
- VirtualBoxをシャットダウンし、.VirtualBox \ VirtualBox.xmlファイルをバックアップします。
- 既存の「Virtualbox VMs」フォルダーを見つけ、内容を含むフォルダー全体を新しいドライブEにコピーします(移動しない)。
VirtualBoxを実行してから、VMごとに順番に:
3.1 VM名を右クリックして、ポップアップメニューから[削除]を選択します。「物理的にファイルを削除しますか?」質問。
3.1bは、UIからVMを削除した後、VirtualBoxを閉じ、バックグラウンドのVBoxSVCタスクがタイムアウトして終了するのに十分な時間、閉じたままにする必要があります。次に、VirtualBoxアプリを再度起動し、Machine | Addを使用して、前の手順で削除したVMを追加します。
3.2 [Machine | Add ..]メニュー項目を選択し、ドライブE:のVMの新しい場所に移動して、.vboxファイルを選択します。
3.3。残りのVMについても繰り返します。
- [ファイル|設定]で、デフォルトのマシンパスを「E:\ VirtualBox VMs」に設定します
- 各VMをテストします。それらがすべて機能することを確認した後にのみ、フォルダを含む古いVMを削除します。つまり、「C:\ VirtualBox VMs」を削除します。
.VirtualBox\VirtualBox.xml
ファイルを編集し、検索/置換を実行して、各ハードディスクとスナップショットイメージへのパスを更新する必要もありました。また、に含まれるすべてのファイルではなく、Machines
とHardDisk
フォルダーのみを移動しました。これは.VirtualBox
すべてのグローバル構成とログ記録などであるためです。
VirtualBox.xml
は、にあります~/Library/VirtualBox/VirtualBox.xml
。VMはにあります~/VirtualBox VMs
。
VBoxManage list vms
。2)VMの名前の横、中括弧内に、それらのUUIDが参照されます。興味のあるものをコピーします。詳細については、を介して取得できますVBoxManage showvminfo UUID
。3)で目的のVMの登録を解除しますVBoxManage unregistervm UUID
。4)対象のVMのディレクトリを移動します。5)最後に、次の方法でマシンを登録VBoxManage register NameOfVM.vbox
します。NameOfVMは、.vbox
登録するVM ファイルの実際の名前を意味します。
VMが2つしかないので、VirtualBoxのデフォルトのストレージの場所を変更して、VMのクローンを作成するだけでよいことがわかりました。クローンは、私が望んでいた新しいHDの新しい場所に作成されました。すべてがそのままで、スナップショットであり、仮想HDの場所を再マップする必要はありません。
最も簡単な方法では、仮想マシンを削除して設定を変更する必要はありません。
Virtualbox VMsフォルダーを新しいドライブにコピーします。
Virtual Box Machine Managerを実行します。メディアマネージャーファイル->仮想メディアマネージャーを実行します
2a。ストレージを移動するVMを選択します。[ リリース ]ボタンをクリックしてから、[ 削除 ]ボタンをクリックします。次のダイアログで、仮想ドライブを削除または保持できます。Virtualbox Machine Managerに残っているマネージャーを閉じます。
メディアを削除したばかりのVMを選択し、[ 設定]ボタンをクリックして、[ ストレージ]セクションをクリックします。メディア(通常はSATA)のコントローラーを追加し、ハードドライブを追加して既存のディスクを選択し、新しい場所でVDを選択します。
移動するマシンごとに繰り返します
新しい場所で仮想マシンを起動して確認します。次回Virtual Media Managerにアクセスすると、VMエントリにカーソルを合わせると、VDが保存されている場所が表示されます。
使用している場合は、新しいドライブを指すようにスナップショットフォルダーを変更してください。各マシンにはスナップショットフォルダーの設定があり、VM Managerの[ファイル]-> [設定]にはデフォルトマシンのフォルダー設定もあります。これらの設定も変更する必要があります。
さらに、xmlファイルのパスも変更する必要がありました。その後、問題なく動作しました。
注:これが書かれてから状況は少し変わっています。Robの答えをご覧ください。今では非常に簡単です。
はるかに簡単です。1)新しい場所に移動します2)仮想ボックスメニューから削除を右クリックします3)マシンメニューから[追加]を選択します4) '仮想ボックスマシン定義'タイプの8kb Blueアイコンを見つけます それを選択すると、virtualboxリストに追加されます。仮想マシンをダブルクリックすると機能します。
*.vbox
で、そのフォルダー内のファイルをクリックするだけです。
Macでは、このファイルのパスを編集します。
/Users/pleddy/Library//VirtualBox/VirtualBox.xml
それは簡単でした!
(Arch LinuxでVirtualbox 5.0.12を使用して)この問題に1日費やした後、thomthomの答えが示唆する方法でようやく解決しました。正確な手順が不明な場合、マシン全体(スナップショットを含む)を複製するコマンドは次のとおりです。
VBoxManage clonevm --mode all --basefolder </new/path/> --register <VM_to_clone>
でVMの名前を取得します
VBoxManage list vms
必要に応じて、パスと名前を引用してください。
最後に、すべてが正常かどうかを確認し、元のファイルを削除します。
これですべてです。xmlファイルや16進エディターを気にする必要はありません。GUIを使用する必要もありません。
http://www.virtualbox.org/manual/ch08.html#vboxmanage-clonevm
VM_to_clone
VMのUUIDまたは名前です。指定されたコマンド(UUIDを使用)を使用して、ディレクトリが作成され/new/path/_<UUID>_ Clone
、含まれるファイルも_<UUID>_ Clone
名前として使用されました。より明確な名前を明示的に指定するには、--name "Your preferred name here"
フラグを使用します。
VBoxManage unregistervm UUID
(元の名前を保持VBoxManage list vms
するために使用--name
する場合、同じ名前の複数のVMがあるため、VMを使用してVMのUUIDを取得しないでください)
ルーカスPotterskyのと同じ操作を行うために、答えが、コマンドライン(Windows上で置き換えてvboxmanage
とVBoxManage.exe
):
すべての仮想マシンをリストします。
vboxmanage list vms
または実行中のみ:
vboxmanage list runningvms
各マシンに対して名前とUUIDを出力します。
移動するマシンごとに次の手順を実行します。
それを正常にシャットダウンします。
vboxmanage controlvm UUID acpipowerbutton
登録解除:
vboxmanage unregistervm UUID
仮想マシンのフォルダーを新しい場所に移動します。
.vbox
ファイルへのパスを指定して、登録し直します。
vboxmanage registervm /path/to/machine.vbox
これは、VirtualBoxのMacOSリリース(リリース4.1.12)でも機能しました。VirtualBoxが終了するまで5〜10秒待ってから再起動しました。アクティビティモニターで、VBoxSVCが正常に終了したことを確認しました。
これを行わないと、次のようなエラーが表示されます(Windowsからの誰かのエラーメッセージをコピーして貼り付けています)。このエラーが発生した場合、単にVirtualBoxを終了していないか、VBoxSVCが終了するまで十分に待機していないことが原因です。
Failed to open virtual machine located in E:/<path>/<machine_name>/<machine_name>.vbox.
Cannot register the hard disk 'E:\<path>\<machine_name>\Snapshots/{0ece4bff-9185-4cff-9069-b3d1f4536394}.vdi' {0ece4bff-9185-4cff-9069-b3d1f4536394}
because a hard disk 'C:\<path>\<machine_name>\Snapshots/{0ece4bff-9185-4cff-9069-b3d1f4536394}.vdi' with UUID {0ece4bff-9185-4cff-9069-b3d1f4536394} already exists.
Result Code: E_INVALIDARG (0x80070057)
Component: VirtualBox
Interface: IVirtualBox {c28be65f-1a8f-43b4-81f1-eb60cb516e66}
VirtualBox v4.3.14を搭載したOS Xでは.vbox
、新しい場所からファイルをダブルクリックするだけで、VirtualBoxが開き、利用可能なVMのリストに追加されました。
VirtualBoxの下の設定にはデフォルトの保存場所があります。 http://mattvelic.com/default-vm-location/
死んだ。ウェイバックマシンのコンテンツは次のとおりです。
http://web.archive.org/web/20131116130725/http://mattvelic.com/default-vm-location
... [ファイル]メニューの[設定]を確認します。見よ![全般]タブの最初の項目は[既定のコンピューターフォルダー]です。 http://web.archive.org/web/20131116130725im_/http://54.225.211.105/wp-content/uploads/2012/11/VB_Preferences.png 場所を編集して自分のストレージドライブを指すようにし、すぐに作り直しましたVM。今回は、VirtualBoxがマシンファイルとVDIの両方を正しい場所に作成しました。ここでの本当の教訓は、ソリューションが技術的である必要がない場合があるということです。ITプロフェッショナルとして、問題への回答は複雑になると思う傾向があると思います。明らかな解決策に目を光らせてください!
これは可能だとは思いません。
VDIを新しい場所に移動できますが、XMLの変更を避けることはできないと思います。別の方法として(実際にはXMLエディションと同じです)、GUIを使用して新しい仮想マシンを作成し、移動したイメージをディスクがニーズに合うように選択しますか?
私はこの方法を使用します:
コマンドvboxmanage internalcommands sethduuid "my path to myhdd.vdi" 6912BF7F-13BB-4E70-A2CA-C92300FEC3DCを使用して、新しい場所にある.vdiの新しいUUIDを生成します。
(前の例では、独自のUUIDを使用します。追加しないでください。コマンドは自動生成します。このステップを省略した場合、新しい場所から.vdiを追加すると、UUIDが既に存在するというエラーが表示されます)。
完了しました。
Oracle VM VirtualBox(バージョン6.0.4でテスト済み)で、単にVMをシャットダウンします-> VirtualBox ManagerでVMを右クリックします-> [移動...]をクリックします->新しいディレクトリを選択します。それでおしまい!