VagrantはVMへの変更をどこに保存しますか?


103

私はVagrantから始めたばかりで、いくつかの詳細を理解するのに少し問題があります。私はドキュメントを読みましたが、それでも基本的な概念がありません。Vagrantボックスを起動したいときは、次のコマンドを実行します。

vagrant up

これにより、「ボックスに基づいてVMが構築されます」私は、ボックスが〜/ .vagrant.dに格納されていることを理解しています。実際、ベースのUbuntuボックスから自分のボックスをパッケージ化しています。しかし、vagrantを実行してvmにファイルを追加し始めると、vmの仮想ハードドライブはどこに保存されますか?たとえば、apt-get install apache2を実行し、ルートシステムが変更された場合、これはどこで変更されますか?

現在のディレクトリでduを実行しても、変更が表示されません。また、〜/ .vagrant.dディレクトリに変更はありません。ただし、私はvagrant haltを実行し、ローカルマシンを再起動してからvagrantを再度実行すると、変更がどこかに保持されます。

浮気も報告

[default] VM already created. Booting if its not already running...

VMが作成された場所と変更が行われた場所を誰かに教えてもらえますか?

回答:


113

Vagrantは、~/.vagrant.d/boxes/あなたが言ったように、にあるベースボックスをインポートします。これは、ベースボックスが保持される場所です。これを使用して、クリーンな状態からVMを起動します。VMをインポートする場合、データファイルとVMの状態を保存する場所の責任はVirtualBox自体にあります。これは構成可能な場所ですが、通常~/VirtualBox\ VMSはMac OS XおよびLinuxのデフォルトです。Windowsでは、ボックスは保持されます%userprofile%\.vagrant.d\boxes

あなたがたまたま使用しているプラ​​ットフォームに関係なく、それらが作成されている場所を見つけるのは簡単です。

1. Start VirtualBox. 
2. Go to the VM that shows as running instance. 
3. Check out the Settings ->Storage. 
4. You can find the path to location where VMs are created and stored in your file system.

お返事ありがとうございます。あなたはそれがどのように機能するかをうまく説明しました。
ツリー

12
それはだ~/VirtualBox VMS、あまりにもWindows上で。
Jason R. Coombs

ここで@pyfuncと他のユーザーvagrant upが、最初に使用して作成されていない既存のVMでvagrantを使用するのに役立つかどうか疑問に思っていました。stackoverflow.com/q/14503932/80353
Kim Stacks

@kimsia:特定の準備の後でVMをvagrantで使用できるボックスファイルとしてエクスポートすることが可能です。それが役立つかどうか私のブログのメモを参照してください:pyfunc.blogspot.com/2011/11/…– pyfunc 2013
1

@pyfunc、返信ありがとうございます。あなたのブログ記事は私にいくつかの手がかりを与えました。質問する追加の質問があります。あなたのコメントをコピーして質問の回答として貼り付け、そこで会話をしてもいいですか?それとも、自分の質問への回答としてそれを自分で入れたいですか?これは私の質問です。stackoverflow.com/ q / 14503932/80353
Kim Stacks

4

VirtualboxがデフォルトでVMに使用するディレクトリは常に変更します。通常、Windowsのプロファイルフォルダーにあります。

「D:\ VHDs \ VBox \」のようなものに変更し、そこに私は私の迷惑なテストvm:「test01_1347456065」を見つけました。それはtest01と呼ばれていたので、私はvagrantが数字を追加して物事を一意に保つと思います。


2
Vagrantは、フォルダ名にUNIXタイムスタンプを追加します。
kynan 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.