133
126

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Vagrantfileに一行書くだけでVMのディスク容量を増やす方法

Last updated at Posted at 2017-02-09

はじめに

Vagrant を使うとカジュアルにVMを作ったり壊したりできて便利なのだが、VMの作成元である box image はディスク容量が少ないケースが多く、すぐに容量不足に陥るのがネックだと感じていた。

その解決策を探している中で、[vagrant-disksize] (https://github.com/sprotheroe/vagrant-disksize) というプラグインを発見した。これを使えば Vagrantfile に設定を一行書くだけでVMのディスク容量が増やせる。

[vagrant-disksize] (https://github.com/sprotheroe/vagrant-disksize) プラグインを使って VM のディスク容量を増やす方法

まずは [vagrant-disksize] (https://github.com/sprotheroe/vagrant-disksize) プラグインをインストールする。

$ vagrant plugin install vagrant-disksize

あとは Vagrantfile に config.disksize.size の設定を一行追記して、

Vagrantfile
Vagrant.configure('2') do |config|
  config.vm.box = 'ubuntu/xenial64'
  config.disksize.size = '100GB' # <- この設定を書く
end

vagrant up を実行するだけ。

$ vagrant up

...(snip)...
==> default: Resized disk: old 10240 MB, req 102400 MB, new 102400 MB
==> default: You may need to resize the filesystem from within the guest.
...(snip)...

すると、通常は 10GB である ubuntu/xenial64 (20170207.0.0) のディスク容量が・・・
ubuntu_xenial_10GB_1.png

ubuntu_xenial_10GB_2.png

下記の通り、100GB に増える。
ubuntu_xenial_100GB_1.png

ubuntu_xenial_2_100GB.png

VM作成後でもディスク容量を増やせる

一度VMを作成してからでも、Vagrantfile のディスクサイズ設定値を増やして vagrant halt -> vagrant up を実行することで、いつでも好きなタイミングでディスク容量を増やせる。

Vagrantfile
Vagrant.configure('2') do |config|
  config.vm.box = 'ubuntu/xenial64'
  config.disksize.size = '120GB' # 100GB から 120GB に変更
end
$ vagrant halt

...(snip)...

$ vagrant up

...(snip)...
==> default: Resized disk: old 102400 MB, req 122880 MB, new 122880 MB
==> default: You may need to resize the filesystem from within the guest.
...(snip)...

下記の通り、120GB に増えている。
ubuntu_xenial_1_120GB.png
ubuntu_xenial_2_120GB.png

動作確認環境

ホストOS x ゲストOSの組み合わせは下記4パターンを試し、いずれも動作することを確認した。

  • Vagrant: 1.9.1
  • プロバイダ: VirtualBox (5.1.14)
  • ホストOS:
    • MacOS Sierra (10.12.3)
    • Windows 10 Pro (64bit)
  • ゲストOS (box image):
    • ubuntu/xenial64 (20170207.0.0)
    • ubuntu/trusty64 (20170202.1.0)

留意点

README.md#Limitations に記載されていること:

  • VirtualBox 以外のプロバイダでは動作しない
  • box イメージによっては上手く動作しなかったり、別途ゲストOS内でパーティション設定が必要になるかも知れない
  • ディスク容量は増やす方向にしか変更できない

その他気付いたこと:

  • ディスクイメージファイルは .vmdk とかであっても .dvi に変換される
  • このとき、VirtualBoxのアプリを起動すると下記のような警告が出る
  • これは、プラグインが変換前のディスクイメージファイルを VirtualBox の管理対象から外していないため
  • しかし、ゲストOSの動作上は特に問題とならないため、自分は気にしないでいる(もし気になれば「確認」ボタンを押して該当のディスクイメージファイルを「除去」すれば良い)
VirtualBox_Warning.png

おわりに

[vagrant-disksize] (https://github.com/sprotheroe/vagrant-disksize) プラグインを使って Vagrantfile に一行書くだけでVMのディスク容量を増やす方法を紹介した。

留意点に記載の通り環境によっては上手く動作しない場合もあるかも知れないが、そうでなければお手軽にVMのディスク容量を増やせるので便利。

133
126
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
133
126

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?