なんらかの理由で、今朝「vagrant up」を実行すると、次のエラーが表示されます(これは1年以上にわたって正常に機能しています)
Your VM has become "inaccessible". Unfortunately, this is a critical error with VirtualBox that Vagrant can not cleanly recover from. Please open VirtualBox and clear out your inaccessible virtual machines or find a way to fix them.
既存の.vagrantフォルダを削除してvagrant upを試すこともできますが、非常に遅いインターネット速度では永遠に時間がかかります-誰でもこれをすばやく修正する方法を提案できますか?
これは私のために働いた
デバッグ出力を掘り下げた後、実際のVMがそのまま(VirtualBox GUIアプリからロードして実行できます)でも、その内部でVirtualBoxがこの= VM as ""。Vagrantは、伝えられたことを正しく信じて、エラーメッセージを吐き出します。
VBoxManageのヘルプを見た後、そのコマンドであるvmsをリストすると、VirtualBoxに登録されているすべてのVMが驚くほどリストされないことがわかりました。
$ /cygdrive/c/Program\ Files/Oracle/VirtualBox/VBoxManage.exe list vms
"precise64" {3613de48-6295-4a91-81fd-36e936beda4b}
"<inaccessible>" {2568227e-e73d-4056-978e-9ae8596493d9}
"<inaccessible>" {0fb42965-61cb-4388-89c4-de572d4ea7fc}
"<inaccessible>" {c65b1456-5771-4617-a6fb-869dffebeddd}
"<inaccessible>" {9709d3d5-ce4d-42b9-ad5e-07726823fd02}
アクセス不能としてフラグが付けられたこれらのVMの1つは、失われたVMです! VMをアクセス不能として登録解除し、正しい名前で再登録することにより、VBoxManageのワゴンを修正する時が来ました。
C:\cygwin\home\Philip\VirtualBox VMs\Rails-vm-v2\Rails-vm-v2.vbox
に保存されました9709d3d5-ce4d-42b9-ad5e-07726823fd02.
でしたWindowsコマンドプロンプト(またはCygwinターミナル)で、ステップ2の[uuid]
値を使用して、unregistervm
コマンドでVMの登録を解除します。
$ C:\Program Files\Oracle\VirtualBox\VBoxManage.exe unregistervm [uuid]
Registervmコマンドを使用して、VM構成ファイルへのパスでVMを登録します。
$ C:\Program Files\Oracle\VirtualBox\VBoxManage.exe registervm C:\cygwin\home\Philip\Virtual VMs\Rails-vm-v2\Rails-vm-v2.vbox
これで、期待どおりVMを開始できるはずです。
ソース: http://www.psteiner.com/2013/04/vagrant-how-to-fix-vm-inaccessible-error.html
これは私のために働く:
「C:\ Users {user}\VirtualBox VMs {vm-id}」フォルダには2つのファイルがあります
「{vm-id} .vbox-tmp」から「{vm-id} .vbox」に名前を変更すると問題が解決し、「vagrant up」と呼ぶことができます
プロジェクトフォルダーから.vagrantフォルダーを削除して、vagrantを再度実行するだけです。
ここでは何もうまくいきませんでした。
C:\ Users [YourNameHere] .VirtualBox
Vagrantを再度実行します。
vagrant up
これで終了です。
次のコマンドのいずれかでアクセスできないものを見つけます。
$ vagrant global-status
または:
$ VBoxManage list vms
次に、GUIDをメモして、VirtualBox.xml
ファイルから削除します(OS X:~/Library/VirtualBox/VirtualBox.xml
、Windows:%HOME%/.VirtualBox
)。
または、VM)であるフォルダーから.vagrant
フォルダーを削除し、最初から開始します(vagrant up
)。
関連項目: Virtualbox GUIから「アクセスできない」仮想マシンを削除できません VirtualBox
VirtualBox Managerは、おそらくあなたにもう少し役立つ情報を提供します。たとえば、私の場合、.vbox
ファイルが存在しないと報告されました。
見てみると、問題は実際にファイルが存在しないことでした-何かがx.vbox-tmp
に名前を変更しました(VMまだ実行中ですか?)
x.vbox-prev
ファイルをx.vbox
にコピーし、VM)を再起動してみましたが、すべて正常に機能しました。
誰かがあなたのvmをVirtualBox VMsフォルダーから手動で削除した場合、偶然にも、この場合、vmはアクセスできなくなります。ただし、マシンを元に戻すことはできませんが、vagrantは引き続きリストにvmを表示します。 vmリストから完全に削除するには、
\.vagrant.d\data\machine-index
インデックスファイルを開きます。アクセスできないマシンの参照を削除します。次回、以下のコマンドを実行すると、アクセスできないマシンは表示されません。
vagrant global-status --Prune
私の問題は同じでしたが、修正はまったく異なっていました...私のVMはNFS共有によってアクセス可能なネットワークドライブに保存されています。リブート後にリモートドライブが起動しなかったため、VMにアクセスできませんでした。その理由を理解するためにしばらく時間がかかり、その間SO.
それから私は気づき、顔を出し、パスをマウントしましたが、すべてうまくいきました。
要するに、それはパスの問題でした。
同じ船に乗っている人を助ける場合に備えて、ここに含めるべきだと感じました。
[Virtual-ID] .vbox-tmp(VirtualBox VM)の名前を[vm-id] .vboxに変更する必要がありました。その後、.vagrantフォルダーを削除しなくても、vagrantを実行でき、非常にうまく機能しました。