#はじめに
Railsで作ったプロジェクトを仮想環境でホストPCと共有しているフォルダに入れた時に、bundle installしようとするとunlink_internal的なエラーが吐かれた。
#解決法
色々ググりまくってようやく出てきた以下の英語サイトを参考にしつつ。
http://joequery.me/guides/bundle-install-text-file-busy/
要はデフォルトだとbundlerがgemをインストールする際のフォルダがvendor/bundleだけど、そこがホストPCと共有されているフォルダだとダメですよーってことらしい。
というわけでbundlerがgemをインストールするフォルダを共有フォルダではない場所に指定してあげれば解決する。
指定箇所はRailsプロジェクト内の.bundle/configに書かれているので、共有フォルダ外に新たにgemインストール用のフォルダ(上のサイトの例だと.bundles/(プロジェクト名))を作ってあげて、そこのパスを指定してあげればいい。
config
BUNDLE_PATH: "/home/vagrant/.bundles/YOUR_PROJECT_NAME_HERE"
BUNDLE_DISABLE_SHARED_GEMS: '1'