ゲストOS追加(イメージファイル)2009/03/23 |
[1] | これまでLVMの論理ボリュームにゲストOSを構築してきましたが、VMware などのように一つのイメージファイルを作成し、
その中へゲストOSを構築してみます。 これまでのやり方だと、普通にCD/DVDからインストールできる、OS標準の機能でアクセスできる、 処理性能が高い、といった利点がある上、元々のカーネルを利用して普通のLinuxシステムとしても起動できます。 ただし、このやり方はゲストOSを増やすときに、雛形を作っておいてもそれなりに作業が発生し、多少面倒です。 また他のXen環境にも移行しにくいです。 対して、イメージファイルを作成してそこへ作る場合、OS標準の機能だけでは イメージファイルを利用できないため処理性能は低下しますが、 バックアップをとるのはイメージファイル一つをコピーするだけであったり、 他のXen環境に移行しやすかったりと、管理がしやすいことが利点です。 また、イメージファイルへのインストールには (3) の [3] で作成しておいた雛形を使って作成します。 |
dlp:~# mkdir /var/xen dlp:~# dd if=/dev/zero of=/var/xen/lan.img bs=1 count=1 seek=20G 1+0 records in 1+0 records out 1 byte (1 B) copied, 0.000236 s, 4.2 kB/s dlp:~# dd if=/dev/zero of=/var/xen/lan.swap bs=1 count=1 seek=1G 1+0 records in 1+0 records out 1 byte (1 B) copied, 8e-05 seconds, 12 kB/s dlp:~# dlp:~# mkswap /var/xen/lan.swap Setting up swapspace version 1, size = 1073737 kB no label, UUID=2f05a602-f7d6-4245-845a-b3efd647b000 dlp:~# mkfs -t ext3 -F /var/xen/lan.img mke2fs 1.39 (29-May-2006) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 2621440 inodes, 5242880 blocks 262144 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=0 160 block groups 32768 blocks per group, 32768 fragments per group 16384 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. dlp:~# mount -o loop /var/xen/lan.img /mnt dlp:~# cp root.tgz /mnt/ # (3)の[3]で作成した雛形をコピー dlp:~# cd /mnt dlp:/mnt# tar zxvf root.tgz dlp:/mnt# rm -f root.tgz dlp:/mnt# cp /root/usr.tgz usr/ # (3)の[3]で作成した雛形をコピー dlp:/mnt# cd usr ns:/mnt/usr# tar zxvf usr.tgz ns:/mnt/usr# rm -f usr.tgz ns:/mnt/usr# cd ../var ns:/mnt/var# cp /root/var.tgz ./ # (3)の[3]で作成した雛形をコピー ns:/mnt/var# tar zxvf var.tgz ns:/mnt/var# rm -f var.tgz ns:/mnt/var# cd ../ dlp:/mnt# vi etc/fstab # 今回は / と swap しか作成していないため、いらない所を削除して以下のようにする proc /proc proc defaults 0 0 /dev/hda1 / ext3 defaults,errors=remount-ro 0 1 /dev/hda2 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 dlp:/mnt# vi etc/hostname # ホスト名変更 lan dlp:/mnt# vi etc/hosts 127.0.0.1 localhost # 変更 127.0.1.1 lan .server-linux.info lan dlp:/mnt# vi etc/network/interfaces # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 #iface eth0 inet dhcp iface eth0 inet static # IPアドレス変更 address 192.168.0.23 network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 auto eth0 dlp:/mnt# dlp:~# umount /mnt dlp:~# cp /etc/xen/www /etc/xen/lan dlp:~# vi /etc/xen/lan # 以下のように変更 kernel = "/boot/vmlinuz-2.6.18-4-xen-686" ramdisk = "/boot/initrd.img-2.6.18-4-xen-686" memory = "512" name = " lan "vcpus = "2" nicks = "1" vif = [ 'mac=00:16:3e:00:00: 20 ,bridge=xenbr0' ]disk = [ ' file:/var/xen/lan.img,hda1,w ',' file:/var/xen/lan.swap,hda2,w ' ]root = "/dev/hda1 ro" extra = "xencons=tty clocksource=jiffies" dlp:~# xm create -c lan Debian GNU/Linux 5.0 lan tty1 lan login: |
[2] | 作ったイメージファイルを雛形としてとっておきます。 |
dlp:~# # ホストOS上 dlp:~# cp /var/xen/lan.img /root/root.img dlp:~# cp /var/xen/lan.swap /root/swap.img dlp:~# total 891160 -rw-r--r-- 1 root root 21474836481 2007-06-03 10:39 root.img -rw-r--r-- 1 root root 00044442338 2007-06-24 01:55 root.tgz -rw-r--r-- 1 root root 01073741825 2007-06-24 07:08 swap.img -rw-r--r-- 1 root root 00076528492 2007-06-24 01:56 usr.tgz -rw-r--r-- 1 root root 00075088604 2007-06-24 01:57 var.tgz
|
Sponsored Link |