仮想マシン · 1 min read · Feb 09, 2026

Debian Sarge 用の完璧な Xen 3.0.3 セットアップ - ページ 8

5.2.2 最初の仮想マシンを作成して起動する

今、テンプレートのコピーを作成して最初の仮想マシン vm01 を作成します:

cp -pf /vserver/images/vm_base.img /vserver/images/vm01.img  
cp -pf /vserver/images/vm_base-swap.img /vserver/images/vm01-swap.img

バイナリ Xen インストールでは、Xen 構成ファイルに仮想マシンのホスト名とネットワーク構成を指定することはできません。これらの詳細を仮想マシン内で直接指定する必要があります。したがって、今すぐイメージをマウントしていくつかのファイルを編集する必要があります:

mount -o loop /vserver/images/vm01.img /vserver/vm_base  
chroot /vserver/vm_base

最初の仮想マシンのホスト名は vm01.example.com ですので、次のようにします:

echo "vm01.example.com" > /etc/hostname

次に、/etc/network/interfaces を編集してネットワーク構成 (IP アドレス 192.168.0.101、ゲートウェイ 192.168.0.1) を入力します:

vi /etc/network/interfaces

| auto lo iface lo inet loopback address 127.0.0.1 netmask 255.0.0.0 # プライマリネットワークインターフェース auto eth0 iface eth0 inet static address 192.168.0.101 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 |

その後、chroot 環境を出てイメージをアンマウントします:

exit  
umount /vserver/vm_base

次に、vm01 用の Xen 構成ファイル /etc/xen/vm01-config.sxp を作成します:

vi /etc/xen/vm01-config.sxp

| name="vm01" kernel="/boot/vmlinuz-2.6-xen" root="/dev/hda1" memory=32 disk=['file:/vserver/images/vm01.img,hda1,w','file:/vserver/images/vm01-swap.img,hda2,w'] # ネットワーク vif=[ '' ] extra="3" |

メモリには、その仮想マシンに割り当てたい RAM を指定します (ここでは: 32 MB)。ディスクには、使用するイメージとそれをマウントする方法 (すなわち、どのパーティションの下に、例: hda1) を指定します。これは 必ず イメージの /etc/fstab ファイルの設定に対応している必要があります!

vm01 を次回のシステム起動時に自動的に起動させたい場合は、次のようにします:

ln -s /etc/xen/vm01-config.sxp /etc/xen/auto

さて、vm01 を起動しましょう:

xm create -c /etc/xen/vm01-config.sxp

何も問題がなければ、vm01 は問題なく起動し、ログインできるはずです。vm01 のシェルを離れるには、コンソールにいる場合は CTRL+] を、PuTTY を使用している場合は CTRL+5 を入力します。外部からは、SSH を介して 192.168.0.101 に接続できるはずです。

dom0 のシェルに戻ったら、次のコマンドを実行して vm01 をシャットダウンできます:

xm shutdown vm01

他の Xen コマンドは次のとおりです:

xm create -c /path/to/config - 仮想マシンを起動します。
xm shutdown - 仮想マシンを停止します。
xm destroy - 仮想マシンを即座に停止します。シャットダウンせずに電源ボタンを切るようなものです。
xm list - 実行中のシステムのリストを表示します。
xm console - 仮想マシンにログインします。
xm help - すべてのコマンドのリスト。

これで、メインシステムを再起動して vm01 が自動的に起動するかどうかを確認できます (もし /etc/xen/auto にシンボリックリンクを作成した場合):

shutdown -r now

5.2.3 さらに仮想マシンを作成してカスタマイズする

イメージテンプレートをコピーするだけで、さらに仮想マシンを作成できます:

cp -pf /vserver/images/vm_base.img /vserver/images/vm02.img  
cp -pf /vserver/images/vm_base-swap.img /vserver/images/vm02-swap.img

再び、次のようにネットワーク構成を指定する必要があります:

mount -o loop /vserver/images/vm02.img /vserver/vm_base  
chroot /vserver/vm_base

今、ホスト名は vm02.example.com ですので、次のようにします:

echo "vm02.example.com" > /etc/hostname

次に、/etc/network/interfaces を編集してネットワーク構成 (例: IP アドレス 192.168.0.102、ゲートウェイ 192.168.0.1) を入力します:

vi /etc/network/interfaces

| auto lo iface lo inet loopback address 127.0.0.1 netmask 255.0.0.0 # プライマリネットワークインターフェース auto eth0 iface eth0 inet static address 192.168.0.102 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 |

その後、chroot 環境を出てイメージをアンマウントします:

exit  
umount /vserver/vm_base

次に、Xen 構成ファイルを作成する必要があります。例: /etc/xen/vm02-config.sxp:

vi /etc/xen/vm02-config.sxp

| name="vm02" kernel="/boot/vmlinuz-2.6-xen" root="/dev/hda1" memory=32 disk=['file:/vserver/images/vm02.img,hda1,w','file:/vserver/images/vm02-swap.img,hda2,w'] # ネットワーク vif=[ '' ] extra="3" |

マシンを起動します:

xm create -c /etc/xen/vm02-config.sxp

次のようなエラーが表示された場合:

Using config file "/etc/xen/vm02-config.sxp".  
Error: Error creating domain: The privileged domain did not balloon!

これは、仮想マシンが使用可能なメモリよりも多くのメモリを使用しようとしたことを意味します。仮想マシンの構成ファイルを編集してメモリの値を減らし、再度起動を試みてください。

起動時に仮想マシンを開始したい場合は、シンボリックリンクを作成します:

ln -s /etc/xen/vm02-config.sxp /etc/xen/auto

今、各マシンにログインして、通常のシステムのように構成できます。

好きなだけ仮想マシンを作成できます。ハードウェアが制限です!

6 リンク

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。