Xen的半虚拟化客户端的使用方法

为了能够看到生成的Xen,这里不使用virt-manager生成半虚拟化客户端操作系统。下面以安装了RHEL5-Xen等Xen环境为前提。

1.生成客户端操作系统的磁盘映像。


dd if=/dev/zero of=/root/rhel5.img bs=1M seek=4096 count=0

mke2fs-F-j/root/rhel5.img


2.将当前运行中的Linux文件系统上的文件复制到步骤1中准备的磁盘映像中。


mount-o loop/root/rhel5.img/mnt/

cp-ax/{dev, etc, usr, bin, sbin, lib, lib64,var}/mnt/

mkdir-p/mnt/{root, proc, sys, home, tmp}


3.将磁盘映像上的fstab重新设置为用于客户端操作系统。

将/dev/xvda1设置为块设备。/dev/xvda1是为客户端操作系统而准备的块设备名称。设置方法将在后面介绍。

Xen的半虚拟化客户端的使用方法 - 图1

4.在磁盘映像的modprobe.conf中指定PV驱动程序模块。

在这里指定的是PV驱动程序的前端驱动程序—xennet、xenblk。


vim/mnt/etc/modprobe.conf

alias eth0 xennet

alias scsi_hostadapter xenblk


5.将runlevel设置为3。

将/mnt/etc/inittab的initdefault行进行如下更改。


/mnt/etc/inittab initdefault

id:3:initdefault:


6.向securetty添加tty0。

为了可以从控制台登录,需要向securetty添加tty0。


echo tty0>>/etc/securetty


7.生成initrd(在Dom0上的/boot下生成)。

指定客户端操作系统的fstab,生成initrd。指定时要使PV驱动程序模块xennet、xenblk也加入initrd中。


mkinitrd-f/boot/initrd-2.6.18-164.el5xenU.img 2.6.18-164.el5xen—fstab/mnt/etc/fstab—with xennet—with xenblk


umount/mnt/

8.启动客户端操作系统的启动配置文件。

客户端内核和initrd放在Dom0上。


vim/etc/xen/rhel5

kernel="/boot/vmlinuz-2.6.18-164.el5xen"

ramdisk="/boot/initrd-2.6.18-164.el5xenU.img"

memory=1024

name="rhel5"

disk=['file:/root/rhel5.img, xvda1,w']

root="/dev/xvda1 ro"

extra="3"


9.启动客户端操作系统。

使用xm create命令启动客户端操作系统。通过-c选项来连接到启动的客户端操作系统的控制台。


xm create-c rhel5