web-dev-qa-db-ja.com

Vagrant VirtualBox VMは、VagrantFileの変更後に既存のVMをロードする代わりに、新しいものを初期化しています

WindowsでVagrantUbuntu 12.04ボックス(プロバイダーとしてVirtualBox)をセットアップしましたが、過去数か月間はうまく機能しています。昨日、VagrantFileに別の転送ポートを追加してvagrant haltおよびvagrant up。ログインすると、インストールしたプログラムはありませんでした(which git何も表示されませんでした)。

VM VirtualBox guiを介して手動で起動でき、すべてが正しいので、そこにあり、機能していることがわかります。 この関連するstackoverflowの質問 で解決策を試しましたが、 vagrant upまだ既存のVMを起動しません。

これが私のVagrantVMのVirtualBoxログです: http://paste.ubuntu.com/6460060/

他にどこを見ればよいかわからない。 vagrantに既存のVMを強制的にロードさせる方法はありますか?

編集:これも私のVagrantFileです。それはかなり標準的ですが、私はそれが役立つかもしれないと思います。 https://Gist.github.com/gorrillamcd/7694989

VagrantFileに変更を加えるまで、マシンは正常に動作していたことに注意してください。機能しているものと機能していないものの間で変わったのはそれだけです。

6
GorrillaMcD

作業ディレクトリ(Vagrantfileのあるディレクトリ)とVirtualBox VM)の間のリンクは、次のサブディレクトリに配置されたidというファイルです。

.vagrant\machines\<machine_name>\virtualbox

(通常、単一のVM Vagrantfile<machine_name>defaultです)。

idファイルには、VirtualBoxVMのUUIDが含まれています。次のコマンドを使用して、正しいUUIDをチェックアウトする必要があります。

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" showvminfo <VM_NAME> | findstr /B UUID

次に、idファイルをそのUUIDに置き換え、最後にvagrant upを実行する必要があります。

5
Emyl