如何在 CentOS、Fedora 或 RHEL 上编译 virt-manager
问题:我想安装最新的 virt-manager,可以从其官方网站获取。如何在 [CentOS、Fedora 或 RHEL] 上从源代码编译并安装 virt-manager?
virt-manager 是 libvirt 的流行 GUI 前端,允许用户在 libvirt 支持的虚拟机管理程序(例如 QEMU/KVM 或 Xen)上创建和管理来宾虚拟机。 virt-manager 可以控制主机本地虚拟机管理程序以及远程主机的虚拟机管理程序(通过 SSH),为用户提供位置透明的虚拟机管理界面。对于来宾操作系统上的远程桌面访问,virt-manager 通过 VNC 和 Spice 提供集成的远程桌面会话。
虽然 virt-manager 在任何基于 Red Hat 的发行版的基础存储库中都可用,但预构建的 virt-manager 往往落后于官方网站上提供的最新版本。例如,CentOS 7 和 Fedora 22 提供 virt-manager 版本 1.2.1,而截至撰写本文时,最新的 virt-manager 版本已经是版本 1.3.2。
如果您想尝试 virt-manager 的最新功能,您可以下载其源代码并自行构建。以下是如何在 CentOS、Fedora 或 RHEL 上编译 virt-manager。如果您想在基于 Debian 的系统上构建 virt-manager,请参阅本教程。
请注意,由于最新的 virt-manager 依赖于 GTK3,因此您无法将其安装在 CentOS/RHEL 6 或更早版本上。
在开始之前,如果您已经从发行版的存储库安装了现有的 virt-manager,则需要卸载它。
$ sudo yum remove virt-manager
在这里,我们将从最新的源代码构建 virt-manager 的 RPM 包,并安装 RPM。
首先,搭建构建环境,并生成virt-manager的RPM包,如下所示。在 Fedora 上,如果您愿意,可以将 yum
替换为 dnf
。
$ sudo yum install rpm-build intltool
$ curl -O https://fedorahosted.org/released/virt-manager/virt-manager-1.3.2.tar.gz
$ tar -xf virt-manager-1.3.2.tar.gz
$ cd virt-manager-1.3.2
$ python setup.py rpm
成功构建后,将在 ~/rpmbuild/RPMS/noarch
中找到 RPM 包。进入这个目录。
$ cd ~/rpmbuild/RPMS/noarch
您将找到 virt-manager 的两个 RPM 软件包:virt-manager-XXX.rpm
和 virt-manager-common-XXX.rpm
。

先安装virt-manager-common-XXX.rpm
,然后再安装virt-manager-XXX.rpm
。
$ sudo yum install virt-manager-common-1.3.2-1.NNNNNNN.noarch.rpm
$ sudo yum install virt-manager-1.3.2-1.NNNNNNN.noarch.rpm
此时您应该能够启动 virt-manager。
$ virt-manager
