KVM (简体中文)

From ArchWiki

Jump to: navigation, search


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 kvmkvm-intel模块。

modprobe kvm
modprobe kvm-intel

或者使用AMD扩展的话就modprobe kvmkvm-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

  1. 创建一个操作系统镜像
    $ qemu-img create -f qcow2 <Image_Name> <size>
  2. 安装操作系统
    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
  3. 运行系统
    $ qemu-kvm -hda <Image_Name> -m 512 -vga std

注意:如果没有使用"-m"参数,KVM缺省内存为128M。

详情可参见QEMUUsing 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").

Personal tools