XXX : 文档说必须在有VT(即VMX)的Intel CPU或者有SVM(即Secure Virtual Machine,也称作AMD-V)的
AMD CPU上安装。我在Turion 64 X2上安装,没问题。
探测AMD和Intel CPU是否支持VT或SVM,可以参考内核中kvm的has_svm()和cpu_has_kvm_support()
函数。
1. 保证内核版本在2.6.20或更新,去www.kernel.org查看你的内核的发布时间,再到:
http://sourceforge.net/project/showfiles.php?group_id=180599
下载一个发布时间稍晚于你的内核的 kvm-<release>.tar.gz
Note: linux内核的include/linux/kvm.h中定义了一个KVM_API_VERSION宏,例如2.6.22中它是12,你
下载的kvm-<release>.tar.gz中,user/kvmctl.c中定义了一EXPECTED_KVM_API_VERSION,这个宏的值
必须和你用的内核匹配。 不过这步会在configure时检查,不用担心。
# tar zvxf kvm-<release>.tar.gz -C /usr/local/
# cd /usr/local/kvm-<release>/
2. 编译之前,注意。(这步不做也可以,注意指定步骤3中的--kerneldir参数即可)
KVM configure时会错误的把 /lib/modules/`uname -r`/build 认为是源代码所在
目录(事实上/lib/modules/`uname -r`/source才是源代码目录,只有编译内核时没
有用O=<dir>指定输出目录,这二者才是相同的)。 因此,需要更改一下,使build
这个符号链接跟source指向的一样。
# cd /lib/modules/2.6.22/
# unlink build
# ln -sf `readlink source` build
注意做完<3>之后还要把build这个链接给改回来。
或者不改也可以,注意在<3>中configure时的参数。
3. configure,make,make install
# cd /usr/local/kvm-<release>/
# ./configure --prefix=/usr/local/kvm --with-patched-kernel
//如果没做<2>,就加上--kerneldir=/lib/modules/`uname -r`/source
# make
# make install
4. 加载模块
# modprobe kvm-amd //或者modprobe kvm-intel,视你的CPU而定
5. 创建虚拟磁盘
# /usr/local/kvm/bin/qemu-img create -f qcow vdisk.img 5G
6. 从ISO引导
# /usr/local/kvm/bin/qemu-system-x86_64 -hda vdisk.img -cdrom /root/windows2000.iso -boot d -m 384
-m 384是指定384M的内存。如果机器内存不足1G,建议用192或128。
如果是Intel CPU,把"qemu-system-x86_64"改成"qemu"。
7. 安装完毕后,启动虚拟机。
# /usr/local/kvm/bin/qemu-system-x86_64 vdisk.img -m 384
http://linux.chinaunix.net/bbs/thread-907956-1-1.html