1. ホーム
  2. vagrant

[解決済み] VagrantはどこでVMの変更を保存していますか?

2022-12-08 22:09:52

質問

Vagrantを使い始めたばかりなのですが、いくつかの詳細を理解するのに苦労しています。ドキュメントに目を通しましたが、基本的なコンセプトがまだわかっていません。 私はVagrantボックスを開始したいとき、私は実行します。

vagrant up

これは "build the VM based on the box" ボックスが ~/.vagrant.d に格納されることは理解していますし、実際私はベースの Ubuntu ボックスから自分のボックスをパッケージアップしました。 しかし、vagrant up を実行して vm にファイルを追加し始めると、vm の仮想ハードディスクはどこに格納されるのでしょうか? 例えば、apt-get install apache2 を実行してルートシステムが変更されたとき、これはどこで変更されるのでしょうか?

カレント ディレクトリで du を実行しても、何の変更も見られません。 また、~/.vagrant.d ディレクトリの変更も見当たりません。 しかし、私はvagrant haltを実行し、ローカルマシンを再起動し、再びvagrant upを実行することができ、変更はどこかに保持されています。

vagrant up でも報告されています。

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

VMがどこで作成され、どこで変更されるのか、どなたか教えていただけませんか?

どのように解決するのですか?

Vagrant は、以下の場所にあるベースボックスをインポートします。 ~/.vagrant.d/boxes/ にある、おっしゃる通りです。 これはベースボックスが保管されている場所です。これを利用して、クリーンな状態からVMを起動します。VMをインポートする際、データファイルやVMの状態をどこに保存するかは、VirtualBox自身が責任を持つことになります。これは設定可能な場所ですが、通常デフォルトは ~/VirtualBox\ VMS になります。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.