今天试用了广受好评的Qemu,记录安装过程。
Linux:   Ubuntu 8.04.1
Qemu:   0.9.1
Kqemu: 1.3.0

一. 下载package
因为是用apt-get,所以方便了很多。
      #sudo apt-get install build-essential            //全套编译工具
      #sudo apt-get install kernel-package linux-source module-assistant        //在编译安装Kqemu模块使用
      #sudo apt-get install qemu           //安装qemu模拟器
      #sudo apt-get install kqemu-source        //下载Kqemu内核模块源码,放于/usr/src下
二. 编译Kqemu内核模块
在之前安装了module-assistant工具,所以用不着自己捣鼓编译了。
      #cd /usr/src
      #sudo module-assistant prepare kqemu
      #sudo module-assistant build kqemu
      #sudo module-assistant install kqemu
      #sudo depmod -a

三. 让系统自动运行Kqemu
      //让系统自动加载Kqemu内核模块
      #sudo vi /etc/rc.local
      Insert: modprobe kqemu

      //创建访问Kqemu的权限组并将用户加入组
      #sudo addgroup --system kqemu
      #sudo adduser [Current User] kqemu

      //让系统在加载模块时自动创建对应设备文件/dev/kqemu
      #sudo vi /etc/udev/rules.d/60-kqemu.rules
      Insert: KERNEL=="kqemu", NAME="%k", MODE="0660", GROUP="kqemu"
      #sudo vi /etc/modprobe.d/kqemu
      Insert: options kqemu major=0
四. 附录,我的创建虚拟机的批文件
(1) create_disk.sh
     qemu-img create -f qcow Win2000.qcow 5G
     说明:指定的qcow文件系统格式是qemu的动态磁盘格式,从0开始逐步增加磁盘空间,性能优异。虽然现在有了qcow2格式,但对这个不了解,查了网上,貌似用qcow2格式会遇到很多问题,所以还是用口碑最好的qcow格式了。创建了最大为5G的磁盘空间给Windows 2000。

(2) setup_os.sh
     qemu -hda Win2000.qcow -cdrom ~/Desktop/win2000.iso -boot d -m 512
               -localtime -soundhw all -usb -net nic,vlan=0 -net user -win2k-hack
     说明:创建虚拟机。
              -hda       指定第一IDE硬盘,参数是我之前创建的空磁盘
              -cdrom  指定系统安装盘,我这里是iso文件,也可以是本机光驱/dev/cdrom
              -boot     指定引导盘,a是软驱,c是硬盘,d是光驱,n是网络
              -m         指定虚拟机使用的内存,注意qemu在为虚拟机分配内存是一次占用系统内存,
                            就是说你这里写了多少内存,在启动虚拟机时是全部占用的,这个是我在使用
                            qemu的时候通过进程信息发现的。这里的虚拟机的内存数量还由/dev/shm决
                            定,一般可以指定384以下的,如果觉得内存不够,可以通过如下途径解决:
                            #sudo vi /etc/fstab
                            Insert: none        /dev/shm        tmpfs       size=528m        0      0
                            然后重新启动系统,就可以设置到512m了。
               -localtime     这个设置系统时间。
               -soundhw all     启动声音设备
               -usb     允许使用usb设备
               -net nic, vlan=0    设置网卡,使用vlan 0。
               -net user      在用户空间使用网卡,这样就不需要用root权限了。
               -win2k-hack      这个仅在安装Windows 2000时使用!!

(3) backup.sh
     qemu-img create -b Win2000.qcow -f qcow Win2000.ovl
     说明:在虚拟机系统安装完毕后,可以对初始环境进行备份,在其上创建镜像,这样以后对系统的修改都在镜像上完成,若系统出现故障,可以把镜像删除,还原到初始环境,和ghost类似。

(4) start.sh
     nice -n 5 qemu Win2000.ovl -cdrom /dev/cdrom -boot c -m 512
              -localtime -soundhw all -usb -net nic,vlan=0 -net user -kernel-kqemu -win2k-hack
     说明:这个是系统安装完毕后,开启虚拟机的命令,从镜像启动Windows 2000,增加了使用加速模块的参数-kernel-kqemu,建议这个参数在安装windows系统时不要加,很容易死机(虚拟机),本人测试的结果,在系统运行状态,倒是很稳定运行的。还有就是我在运行qemu的时候,通过nice降低了qemu的进程优先级,因为在一开始运行时,qemu总是95%的CPU占用率,很让人不爽,host搞的特迟钝,在降低优先级后,CPU的占用率降低了好多,而且发现也没有影响虚拟机的性能。