8
9

More than 5 years have passed since last update.

VIRTUALBOX から VAGARNT の BOX 作成

Last updated at Posted at 2015-05-08

みなさん、こんにちは。今回初投稿の株式会社アットウェアのKEYチームの矢納です。

あるプロジェクトでCentOS 5.8(32bit)を使うことがあり、vagrantのboxを探していたのですが、見つかりませんでした。
vagrantのboxは http://www.vagrantbox.es/ に置いてあります。
ですが、ここにはCentOS 5.6(32bit)、CentOS 5.8(64bit)しかありませんでした。今欲しいのはCentOS 5.8(32bit)だよ。
無いのなら作るしか無ない精神で今回作ってみました!
今回はその手順を紹介して行きたいと思います。

VIRTUALBOX, VAGRANT のインストール

ここのインストール方法は省略します。各々のサイトからダウンロードしてインストールしてください。

VIRTUALBOXにCENTOS 5.8を作成する

1.VIRTUALBOXに新規VMを作成します

to_box_from_vm_1.png
to_box_from_vm_2.png
to_box_from_vm_3.png
to_box_from_vm_4.png
to_box_from_vm_5.png
to_box_from_vm_6.png
to_box_from_vm_7.png

2. VMの設定を行います

to_box_from_vm_8.png
to_box_from_vm_9.png
to_box_from_vm_10.png
to_box_from_vm_11.png
to_box_from_vm_12.png

3. CENTOS 5.8 インストール

新規作成ボタンを押して下さい。ここでisoファイルの指定ができます。 ここでは CentOS-5.8-i386-netinstall.isoを使いました。このisoファイルはこちらにあります。
to_box_from_vm_13.png
to_box_from_vm_14.png
to_box_from_vm_15.png
to_box_from_vm_16.png
to_box_from_vm_17.png
to_box_from_vm_18.png
to_box_from_vm_19.png
to_box_from_vm_21.png
to_box_from_vm_22.png
to_box_from_vm_23.png
to_box_from_vm_24.png
to_box_from_vm_25.png
to_box_from_vm_26.png
to_box_from_vm_27.png
to_box_from_vm_28.png
to_box_from_vm_29.png
to_box_from_vm_30.png
to_box_from_vm_31.png
to_box_from_vm_32.png
to_box_from_vm_33.png
to_box_from_vm_34.png
to_box_from_vm_35.png
to_box_from_vm_36.png

4. 色々と設定を行います

4.1 起動時にUPしていないNICの設定を見直す。

# sed -i -e "s:^ONBOOT=no$:ONBOOT=yes:" /etc/sysconfig/network-scripts/ifcfg-eth0
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep ONBOOT
# service network restart
# ip addr show eth0

4.2 MACアドレスとUUIDを無効化

# ln -f -s /dev/null /etc/udev/rules.d/70-persistent-net.rules 
# sed -i -e "s:HWADDR=.*::g" /etc/sysconfig/network-scripts/ifcfg-eth0
# sed -i -e "s:UUID=.*::g" /etc/sysconfig/network-scripts/ifcfg-eth0

4.3 SSHの設定後。 USEDNS を起動

# sed -i -e "s:^#UseDNS yes:UseDNS no:" /etc/ssh/sshd_config
# service sshd start
# chkconfig sshd on

4.4 VM へ SSH

ここからの手順は、通常のターミナルからVirtualBoxにアクセスして作業することとする。

$ ssh root@localhost -p 2222

4.5 VAGRANT グループ&ユーザ追加

# groupadd vagrant
# useradd vagrant -g vagrant -G wheel
# echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers # sudo設定
# sed -i -e "s:^.*requiretty:#Defaults requiretty:" /etc/sudoers # requiretty を無効

4.6 VAGRANTユーザ用の公開鍵を配置

# su - vagrant
# mkdir ~/.ssh
# chmod 0700 ~/.ssh
# curl -k -L -o ~/.ssh/authorized_keys  https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub
# chmod 0600 ~/.ssh/authorized_keys

4.7 VIRTUALBOX の GUEST ADDITIONS をインストール

# yum install -y wget 
# mkdir /media/VBoxGuestAdditions
# wget http://download.virtualbox.org/virtualbox/4.3.18/VBoxGuestAdditions_4.3.18.iso

※VirtualBoxのバージョンに合わせてダウンロードしてください。

# mount -o loop,ro VBoxGuestAdditions_4.3.18.iso /media/VBoxGuestAdditions
# sh /media/VBoxGuestAdditions/VBoxLinuxAdditions.run

Installing the Window System drivers
Could not find the X.Org or XFree86 Window System, skipping.
は無視しても良いそうです!

4.8 後処理

# rm VBoxGuestAdditions_4.3.18.iso
# umount /media/VBoxGuestAdditions
# rmdir /media/VBoxGuestAdditions/

5. BOX を作成する(各自の端末で)

$ cd ~/VirtualBox\ VMs/centos-5.8_x32/

※各自でVirualBoxの保存先は変更してください

$ vagrant package --base centos-5.8x32 --output centos-5.8x32.box

あとがき

後は作成したboxを使って

$ vagrant box add centos-5.8_x32 centos-5.8_x32.box
$ vagrant init centos-5.8_x32
$ vagrant up

とすればvagrantを使ってCentOS 5.8(32bit)を使用することができます。

今回VMにCentOSをインストールする際にnet-install版を使用しました。実はこれ 4.1 ~ 4.3 の手順をする必要はないかもしれません。また、iptablesで外部からのアクセスが制限されているかもしれませんので、各自でご確認ください。それから、今回CentOS 5.8(32bit)だけでなく、CentOS 5.7(32bit)も欲しかったので、同様の手順でさくさくと作っています。

では、またお会いしましょう(^^)/

8
9
0

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
8
9