ホームディレクトリが実際にリモートサーバーにあり、そのサーバーに〜/ .vagrant.dが置かれていると、vagrantのパフォーマンスが大幅に低下する(およびファイルサーバーのバックアップサイズが増加する)という問題があります。
少なくとも〜/ vagrant.d/boxesをホームディレクトリから移動する方法はありますか?
乾杯。
デフォルトでは、Vagrantは~/.vagrant.d
を使用します。幸いなことに、vagrantはVAGRANT_HOME
と呼ばれる環境変数を提供します。これにより、vagrantのホームを設定できます。
放浪者の家を変更するには、次の手順を実行します(これは現在のセッションでのみ機能します)
export VAGRANT_HOME=/path/to/vagrant
永続的にするには、これを~/.bash_profile
(ログインシェル用)に追加します。
Update:VAGRANT_HOME
がドキュメントに追加されました- 環境変数
VAGRANT_HOME
を設定して、Vagrantがグローバル状態を保存するディレクトリを変更できます。デフォルトでは、これは~/.vagrant.d
に設定されています。 Vagrantのホームディレクトリは、ボックスなどが格納される場所であるため、実際にはディスク上で非常に大きくなる可能性があります。
VAGRANT_HOME
は、私のWindows 8.1ではうまく機能しません。ファイルを変更したときにうまくいきました
D:\ HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.5.3\lib\vagrant\environment.rb
117行目
@home_path = Util::Platform.fs_real_path("D:/vagrant/home/")
スティーブHが言ったように、うまく動作します。
次のコマンドを実行して、Windowsボックスで永続的に設定すると便利な場合があります。
setx VAGRANT_HOME "/d/.vagrant.d/"
Windowsでは、environment.rbの17行目を次の場所に変更します。
vagrant\embedded\gems\gems\vagrant-1.x.x.dev\lib\vagrant\environment.rb
別の場所(ENV変数を読み取るルートの場所)はshared_helpers.rb、71行目(vagrant v 1.6.5)にあります。
# This returns the path to the ~/.vagrant.d folder where Vagrant's
# per-user state is stored.
#
# @return [Pathname]
def self.user_data_path
# Use user spcified env var if available
path = ENV["VAGRANT_HOME"]
# On Windows, we default to the USERPROFILE directory if it
# is available. This is more compatible with Cygwin and sharing
# the home directory across shells.
if !path && ENV["USERPROFILE"]
path = "#{ENV["USERPROFILE"]}/.vagrant.d"
end
# Fallback to the default
path ||= "~/.vagrant.d"
Pathname.new(path).expand_path
end
とにかく、迷惑なバージョンのアップグレードの場合、環境変数VAGRANT_HOMEを使用するのが最善の方法だと思います。
この関数は次のように使用できます。
disk_path = self.user_data_path().to_s
Windowsユーザーの場合、環境変数VAGRANT_HOME
新しい場所に。 PCを有効にするには、PCの再起動が必要になる場合があります。