virt-install を用いたゲスト OS のインストール
前回は sen-tools を用いたゲスト OS のインストールを行いましたが、今回は virt-install を用いた、簡単なゲスト OS インストールをご紹介します。
- とりあえずゲスト OS 用 Image をダウンロード。
$ cd /var/lib/xen/images/
$ wget http://ftp.jaist.ac.jp/pub/Linux/CentOS-vault/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-Minimal.iso
ls /var/lib/xen/images/
CentOS-7.0-1406-x86_64-Minimal.iso
- 以下のコマンドにより、ゲスト OS をインストール。
$ virt-install -n centos7 \
-r 1024 \
-f /home/xen/domains/centos7 \
-s 16 \
--network=bridge:virbr0 \
--nographics \
-l /var/lib/xen/images/CentOS-7.0-1406-x86_64-Minimal.iso
ちなみに、
-n: 識別子
-r: 作成される仮想ファイル名
-s: 仮想ファイルのサイズ
—network: ブリッジ指定
—nographics: グラフィクス無し
-l: OS イメージ
- インストール時にもろもろの設定を行い、ログイン。
CentOS Linux 7 (Core)
Kernel 3.10.0-123.el7.x86_64 on an x86_64
localhost login:
- ネットワーク確認
# ip addr li
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:7d:a0:43 brd ff:ff:ff:ff:ff:ff
上記のままでは eth0 が IP を取得できていないので、以下のコマンドを実行。
$ /etc/sysconfig/network-scripts/ifup /etc/sysconfig/network-scripts/ifcfg-eth0
$ ip addr li
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:7d:a0:43 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.144/24 brd 192.168.122.255 scope global dynamic eth0
valid_lft 2537sec preferred_lft 2537sec
inet6 fe80::216:3eff:fe7d:a043/64 scope link
valid_lft forever preferred_lft forever
ちなみに、ゲスト OS を削除したい場合は、/home/xen/domains/centos7 を削除し、以下のコマンドでゲスト OS の名前を undefine する。
$ sudo virsh
virsh # undefine centos7
Domain centos7 has been undefined
virus # quit