xen4.0制作基于Linux2.6.31.8内核的Guest OS
xen4.0制作基于Linux2.6.31.8内核的Guest OS2010-07-12 16:28系统:rhel5.1 xen版本:xen4.0.1-rc4domain0内核:CentOS-x86_64系统,内核重新编译为打xen补丁之后的linux-2.6.31.8
1.创建映像文件
# dd if=/dev/zero of=vmdisk.img bs=1M seek=8192 count=1
创建大小为8.1G ,名为 vmdisk.img的映像文件
2.格式化映像为linux文件系统
# /sbin/mkfs.ext3 vmdisk.img
提示Proceed anyway? (y,n) 输入y回车就可以了
3.挂载映像
# mkdir /mnt/vmdisk
# mount -o loop vmdisk.img /mnt/vmdisk
这样我们就可以向vmdisk.img中存放文件了
4.拷贝系统文件到虚拟磁盘中
将物理机里面的文件拷贝到/mnt/vmdisk中。如下:
# cp -ax /{root,dev,var,etc,usr,bin,sbin,lib,boot} /mnt/vmdisk/
# mkdir /mnt/vmdisk/{proc,sys,home,tmp}
如果是64位的系统,还有一个lib64的包要拷贝,如下:
# cp -rf /lib64 /mnt/vmdisk/
5.修改/mnt/vmdisk/etc/fstab文件,命令如下:
#echo "/dev/xvda1 / ext3 defaults 1 1" > /mnt/vmdisk/etc/fstab
xen4.0不支持hda,sda,要改成xvda
否则会出现如下错误:
mount : could not find filesystem '/dev/root'
setup other filesystem
setting up now root fs
set up root :moving /dev faild:No such file or directory
no fstab.sys,mounting inernal defaults
setuproot:error mounting /proc :No such file or directory
setuproot:error mounting /sys:No such file or directory
switching to new root and running init
umounting old /dev
umounting old /proc
umounting old /sys
switchroot : mount faild : No such file or directory
kernel panic:not syncing :attempted to kill init
6.卸载/mnt/vmdisk:
#umount /mnt/vmdisk
到此半虚拟的镜像就制作好了
7.修改配置文件
#cp /etc/xen/xmexample1 ./pv-centos.cfg
#vim pv-centos.cfg
修改完成后内容如下,括号里面为注释:
kernel = "/boot/vmlinuz-2.6.31.8" (虚拟机内核)
ramdisk = "/boot/initrd-2.6.31.8.img" (虚拟机的内存虚拟磁盘)
memory = 512 (指定虚拟机的内存大小为256M)
name = ”pv1“ (虚拟机的名字)
vcpus = 2 (指定虚拟机的cpu个数为2个)
vif = [ 'mac=00:16:3e:00:00:11, bridge=xenbr0' ] (网卡参数)
disk = [ 'file:/root/img/vmdisk.img,xvda1,w' ] (虚拟机磁盘,将文件vmdisk.img映射成xvda1,蓝色部分为vmdisk.img所在路径,需要根据用户自己定义的修改)
root = "/dev/xvda1 ro" (虚拟机从hda1启动,这里的root="/dev/xvda1ro"要和第5步中修改的fstab里面写的一模一样,否则就启动不起来)
extra="4 console=hvc0" (此处若不加,系统启动后只能看到mount used greatest stack depth那行,后面真正启动的界面看不到)
8.OK,启动虚拟机:
# xm create pv-centos.cfg
参考文章:http://liyuan462.javaeye.com/blog/679014
文章中的比较实用,所以基本都是按照该文章中的写的,只是添加了一些自己在xen4.0中使用时碰到的问题
修改时间:2011.3.1
页:
[1]