本教程将详细介绍如何在Ubuntu Hardy Heron(Ubuntu 8.04) Server上安装xen虚拟机image。 Linux的发行版均可以作为Xen的客户机(guest)运行,这就避免了你自己创建定制的文件系统image。这些文件系统image已经经过配置与 调教以适合Xen虚拟机的idiosyncracies,和原始的Linux的发行版相比只有轻微的差异。
本教程以实践为主,并不包含理论背景知识,相关知识可以在互联网上获得。
我使用Ubuntu Hardy Heron (i386)作为主机OS(dom0),使用CentOS 5.2作为客户机OS(domU),首先要保证Ubuntu安装了xen相关包
1.下载 CentOS 5.2 image, 在这里 :http://stacklet.com/
2. 解压image
tar -xjf centos.5-2.20080708.img.tar.bz2
3. 在 /mnt 创建 mount 点
mkdir /mnt/img
mkdir /mnt/vm1
4.准备两个文件镜像空间(注意:/ 根目录和 swap分别需要至少1G和128M空间,如果真实应用环境,可能需要更多的空间)
mkdir -p /home/xen/domains/centos
cd /home/xen/domains/centos
dd if=/dev/zero of=Cent_base.img bs=1024k count=1024
dd if=/dev/zero of=Cent_swap.img bs=1024k count=128
mkfs.ext3 diskimage
mkswap swapimage
5. 开始Mount image文件和lvm分区image
mount -o loop centos.5-2.img /mnt/img
mount -o loop /home/xen/domains/centos/Cent_base.img /mnt/vm1
6. 拷贝image中的文件到lvm分区中
cp -a /mnt/img/* /mnt/vm1/
7. 配置客户操作系统的IP地址
vi /mnt/vm1/etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
OnBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.10
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
8.配置客户机hostname
vi /mnt/vm1/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=complay
9.编辑 /mnt/vm/etc/inittab ,加入一行
1:2345:respawn:/sbin/mingetty console
10. jailtime的image默认情况下是不允许root登入的,如果你想允许root登录,需要改变SSH的如下配置,修改/mnt/vm/etc/ssh/sshd_config文件:
Port 2023
PermitRootLogin yes