CUBE SUGAR STORAGE

技術系のことかきます。
Recent Tweets @

Web サイトなどから落としてきたデフォルトのままの Box ファイルから作ることのできる VM は、当たり前だけど自分がいつも使っているような設定が入っていない。 例えば、デフォルトの Box ファイルから作った VM に毎回生じる多量のパッケージの更新作業に費やす時間だけ見ても明らかに無駄だ。 だから、自分でカスタマイズした Box ファイルを作りたいんだけど、どうやら vagrant package コマンドを使えば簡単にできちゃうみたいだ。

Vagrant のインストールなどはプラットフォームによっても異なるため省略。 ひとまずデフォルトの Box ファイル (centos64) を使って VM を起動するところから。

$ vagrant --version
Vagrant 1.3.5
$ vagrant init centos64
$ vagrant up
$ vagrant ssh

例えば、この VM で yum を使ってパッケージを更新する。 終わったら覚えてしまった NIC のマッピングを消してから VM を落とす。
vagrant $ sudo yum update -y
vagrant $ sudo ln -s -f /dev/null /etc/udev/rules.d/70-persistent-net.rules
vagrant $ exit
$ vagrant halt

この状態で vagrant package コマンドを使うことで Box ファイルを作ることができる。
$ vagrant package
$ ls | grep box$
package.box

作った Box ファイルを Vagrant に登録する。
$ vagrant box add mycentos64 package.box

カスタマイズした Box ファイルを使って新しく VM を作ってみる。
$ vagrant init mycentos64
$ vagrant up
$ vagrant ssh

これで、もしパッケージに更新があったとしても少量で済む。
vagrant $ sudo yum update -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.jaist.ac.jp
 * extras: ftp.jaist.ac.jp
 * updates: ftp.jaist.ac.jp
Setting up Update Process
No Packages marked for Update

めでたしめでたし。
  1. tknzk reblogged this from zephyr7501
  2. zephyr7501 reblogged this from momijiame
  3. perpouh reblogged this from momijiame
  4. askmt reblogged this from momijiame
  5. akuwano reblogged this from momijiame
  6. wnoguchi reblogged this from momijiame
  7. act2012bl reblogged this from momijiame
  8. momijiame posted this