KVM (简体中文)
From ArchWiki
i18n |
---|
English |
简体中文 |
KVM, Kernel-based Virtual Machine, is a hypervisor built right into the 2.6 kernel for kernels later than 2.6.20. It is similar to Xen in purpose but much simpler to get running. To start using the hypervisor, just load the appropriate kvm modules and the hypervisor is up. As with Xen's full virtualization, in order for KVM to work, you must have a processor that supports Intel's VT extensions or AMD's Pacifica extensions.
Using KVM, one can run multiple virtual machines running unmodified Linux, Windows or any other system images. (See Guest Support Status) Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc. See KVM Howto
Differences among the kvm, xen, vmware, and qemu can be found from KVM FAQ.
Contents |
获取软件包
Arch 内核 2.6.22 或更新版本现在提供合适的KVM模块. 你可以使用下面命令来检查你的内核版本是否支持KVM :
modprobe -l kvm*
KVM还需要一个定制过的QEMU(EXTRA仓库中的kvm带了qemu-kvm)来启动和管理虚拟机。或者,可安装qemu >= 0.9.0,但它和kvm软件包是冲突的,也附带了一个使用了此技术的可执行的qemu-kvm(qemu --enable-kvm)。
pacman -Sy kernel26 qemu-kvm
或者
pacman -Sy kernel26 qemu
配置内核模块
你可以用以下命令检查你的机器是否支持硬件加速(它会在屏幕上返回某些信息):
egrep '^flags.*(vmx|svm)' /proc/cpuinfo
首先,你得将你的用户加入到kvm用户组中才能使用/dev/kvm设备。
gpasswd -a <Your_Login_Name> kvm
接着,如果你使用Intel扩展的话,modprobe kvm和kvm-intel模块。
modprobe kvm modprobe kvm-intel
或者使用AMD扩展的话就modprobe kvm和kvm-amd模块。
modprobe kvm modprobe kvm-amd
如果成功modprobe kvm,但在modprobe kvm-intel或者kvm-amd时失败(但/proc/cpuinfo表明机器是支持VT的),检查一下你的BIOS设置。某些厂商(特别是笔记本厂商)缺省是关闭VT的。
如果你要永久生效,可将这些模块加入到rc.conf中去。
非root用户使用KVM
缺省情况下,/dev/kvm设备的拥有者是root:root,其它用户无法访问到它。要使普通用户可以无需root权限就执行qemu-kvm,可以将它们加入到kvm用户组中,然后增加一条udev规则,使得/dev/kvm创建时变更它的权限。
groupadd kvm usermod -aG kvm <the users' username> cat >>/etc/udev/rules.d/65-kvm.rules <<EOF KERNEL=="kvm", NAME="%k", GROUP="kvm", MODE="0660" EOF modprobe -r kvm-intel # or kvm-amd if using that hardware modprobe kvm-intel
用户必须注销重新登录,用户组成员属性才会生效。/dev/kvm将被重新创建并且kvm用户组对它有读写权限。
如何使用KVM
- 创建一个操作系统镜像
$ qemu-img create -f qcow2 <Image_Name> <size>
- 安装操作系统
A CD/DVD image (ISO files) can be used for the installation.$ qemu-kvm -hda <Image_Name> -m 512 -cdrom </Path/to/the/ISO/Image> -boot d -vga std
- 运行系统
$ qemu-kvm -hda <Image_Name> -m 512 -vga std
注意:如果没有使用"-m"参数,KVM缺省内存为128M。
详情可参见QEMU和Using the Kernel-based Virtual Machine部分。
Easy to Use for New User
If the qemu package has been installed, you can use an GUI tool, such as qtemu, to manage your virtual machine (you need to change "qemu" in the configure item"QEMU start command" to "qemu-kvm" / "qemu-system-x86_64").