公開日:2009/4/1 0:00:00

CentOS 5

Xen Domain-0関連 Domain-Uの自動起動

About

CentOS 5 on Xen(CnetOS5) 標準インストールマニュアルの方法では、Domain-0を再起動するたびに手動で起動させなければならない。
それを回避するために自動で起動するように設定する。

作業はリモートから putty でアクセス。その後、rootになって行ないます。

自動的にドメイン開始

まずは xm 設定ファイルがある事を確認します。
このサイトの中の手順通りに構築している場合は、「What is the name of your virtual machine?」で問われた時に入力した名前。
もしくはxm listで表示される名称になります。

今回の場合、仮想OS名をlabsixwishにしています。

では確認してみます。

[root@sixwish ~]# cd /etc/xen/
[root@sixwish xen]# xm list
Name                                      ID Mem(MiB) VCPUs State   Time(s)
Domain-0                                   0     1764     2 r-----    xxx.x
labsixwish                                 x      255     1 -b----    xxx.x
[root@sixwish xen]# ls
auto        scripts                  xend-pci-quirks.sxp  xmexample1
labsixwish  xend-config.sxp          xmexample.hvm        xmexample2
qemu-ifup   xend-pci-permissive.sxp  xmexample.vti
[root@sixwish xen]# cat labsixwish
# Automatically generated xen config file
name = "labsixwish"
memory = "256"
disk = [ 'tap:aio:/var/lib/xen/images/labsixwish.pvm.img,xvda,w', ]
vif = [ 'mac=xx:xx:xx:xx:xx:xx, bridge=xenbr0', ]

uuid = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
bootloader="/usr/bin/pygrub"
vcpus=1
on_reboot   = 'restart'
on_crash    = 'restart'
[root@sixwish xen]#

上から何を行なっているかというと、最初に設定ファイルがある場所へ移動します。
次に、xm listで稼動中のDomain-Uの名称を確認します。これは仮想OSが起動していない場合は Domain-0 だけが表示されます。
確認できなかった場合はファイルが有るかを確認します。
今回は名称がわかっているのでcatで内容を表示しています。似たような方式で書かれているファイルがあればそれが当りである可能性が高いです。
判別する方法としては、仮想OSのイメージファイルの保存場所(disk = で始まる個所に表示されている)にファイルが有るかを確認すればよいでしょう。

ファイルが確認できたら、自動で動くように設定します。

[root@sixwish xen]# cd auto
[root@sixwish auto]# ls -la
合計 16
drwxr-xr-x 2 root root 4096 mm月 dd 16:18 .
drwx------ 4 root root 4096 mm月 dd 16:03 ..
[root@sixwish auto]# ln -s ../labsixwish .
[root@sixwish auto]# ls -l
合計 4
lrwxrwxrwx 1 root root 10  mm月 dd 16:48 labsixwish -> ../labsixwish
[root@sixwish auto]#

これで終わりです。

ファイルのコピーでも構わないようですが、設定を変える場合に二箇所変えたりと面倒なのでシンボリックリンクで。

後はDomain-0を再起動、xm listで稼動中のOSが表示されればOKです。

参考サイト