<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Virtualbox | yewton.net</title><link>https://www.yewton.net/tags/virtualbox/</link><atom:link href="https://www.yewton.net/tags/virtualbox/index.xml" rel="self" type="application/rss+xml"/><description>Virtualbox</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>ja</language><lastBuildDate>Fri, 19 Feb 2016 00:00:00 +0900</lastBuildDate><image><url>https://www.yewton.net/media/sharing.png</url><title>Virtualbox</title><link>https://www.yewton.net/tags/virtualbox/</link></image><item><title>VM関連ファイルを外部ストレージに保存して空き容量を確保する</title><link>https://www.yewton.net/2016/02/19/save-storage-space-by-moving-vm-related-files-to-ex-storage/</link><pubDate>Fri, 19 Feb 2016 00:00:00 +0900</pubDate><guid>https://www.yewton.net/2016/02/19/save-storage-space-by-moving-vm-related-files-to-ex-storage/</guid><description>&lt;h2 id="何かと容量を食うvm関連ファイル"&gt;何かと容量を食うVM関連ファイル&lt;/h2&gt;
&lt;p&gt;DockerやらVagrantやらで作業していると、いつのまにかディスク容量が逼迫していることがありますよね。&lt;/p&gt;
&lt;p&gt;自分も128GB SSDのMacBook Proを使っているので、結構いっぱいいっぱいでした。&lt;/p&gt;
&lt;p&gt;そこで拡張ストレージを用意して、容量を食いがちなVM関連のファイルを移動することにしました。&lt;/p&gt;
&lt;h3 id="参考mac用の拡張ストレージ"&gt;(参考)Mac用の拡張ストレージ&lt;/h3&gt;
&lt;p&gt;USBで外付けするようなのだと持ち運びに不便なので、
のような本体のSDカードスロットに差せるようなタイプを個人的には使っています。
iSliceの場合はただのアダプタなので別途128GBのmicroSDカードを調達する必要がありますが、ストレージと一体になっているモノよりは若干割安です。&lt;/p&gt;
&lt;h2 id="vagrant"&gt;Vagrant&lt;/h2&gt;
&lt;p&gt;Vagrant用のBoxファイルとVMイメージの保存場所を変える際には、以下の記事が参考になります:&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;上記の記事を参考に諸々のファイルの移動、VB上の設定を済ませたら、
以下のようなコマンドを &lt;code&gt;.bashrc&lt;/code&gt; やら &lt;code&gt;.zshenv&lt;/code&gt; やらに書いておけば大丈夫です:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;export VAGRANT_HOME=/Volumes/data/.vagrant.d&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="docker-machine"&gt;Docker Machine&lt;/h2&gt;
&lt;p&gt;Docker Machine用のファイルもデカいので移動させたいです。&lt;/p&gt;
&lt;p&gt;Docker Machineでは &lt;code&gt;MACHINE_STORAGE_PATH&lt;/code&gt; という環境変数を参照しています。
デフォルトは &lt;code&gt;~/.docker/machine&lt;/code&gt; です。&lt;/p&gt;
&lt;p&gt;Vagrantの場合と同じように既存のファイルを新しい場所に移動し、
VB上で除去→追加の手順を踏みます。
そして以下のようなコマンドで環境変数をセットします:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;export MACHINE_STORAGE_PATH=/Volumes/data/.docker/machine&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;これも &lt;code&gt;.bashrc&lt;/code&gt; やらに書いておきましょう。&lt;/p&gt;
&lt;h2 id="注意-外部ストレージのフォーマット"&gt;注意: 外部ストレージのフォーマット&lt;/h2&gt;
&lt;p&gt;自分の場合、SDカードが元々フォーマットされていて、
差すだけで既に利用できたので、フォーマットについては特に気にせず移行作業をしてしまいました。&lt;/p&gt;
&lt;p&gt;ところが、移行後に &lt;code&gt;'docker-machine&lt;/code&gt; が謎のエラーで使えなくなってしまいました。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-D&lt;/code&gt; を付けてデバッグ情報を表示したとろ、以下のようなエラーが出ていました:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for &amp;#39;/Volumes/data/.docker/machine/machines/default/id_rsa&amp;#39; are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key &amp;#34;/Volumes/data/.docker/machine/machines/default/id_rsa&amp;#34;: bad permissions
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
Permission denied (publickey,password,keyboard-interactive).
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;実は、 &lt;strong&gt;SDカードがexFATでフォーマットされていたため、permissionが777になってしまっていた&lt;/strong&gt;
ことが原因でした。
exFATの場合、 &lt;code&gt;chmod&lt;/code&gt; することも出来ないので、フォーマットを変更する必要があります。&lt;/p&gt;
&lt;p&gt;Mac OS X用拡張ストレージは、 &lt;strong&gt;〈OS X 拡張 (ジャーナリング)〉でフォーマット&lt;/strong&gt; しましょう。
また、この際に &lt;strong&gt;〈大文字／小文字を区別する〉は不要&lt;/strong&gt; です。
OS Xのメインストレージでは区別されませんし、
Adobeなど一部の製品は大文字小文字を区別するファイルシステムをサポートしていません&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;。
無用なトラブルを避けるためにも、注意しましょう。&lt;/p&gt;
&lt;div class="footnotes" role="doc-endnotes"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;
&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description></item></channel></rss>