如何在 Debian 或 Ubuntu 上编译 virt-manager
问题:我想在我的 Linux 桌面上从源代码构建并安装最新的 virt-manager。在[Debian、Ubuntu]上编译virt-manager的过程是怎样的?
virt-manager 是一个基于 GUI 的虚拟机管理器,允许您通过 libvirt API 创建和管理(本地或远程)虚拟机和容器。它支持多种虚拟机管理程序,例如 KVM、QEMU、Xen 以及 LXC 容器。虽然 virt-manager 在大多数发行版的基础存储库中都可用,但预构建的 virt-manager 软件包始终落后于官方网站上提供的最新版本。例如,Ubuntu 15.10和Debian 8附带virt-manager 1.1,而最新的virt-manager是1.3.2版本。
如果您想尝试 virt-manager 的最新和最强大的功能,您需要从源代码构建并安装它。在这篇文章中,我将展示如何在 Debian、Ubuntu 或 Linux Mint 上编译 virt-manager。如果您想在基于 Red Hat 的发行版上构建 virt-manager,请参阅本教程。
在开始之前,如果您已经从发行版的存储库安装了现有的 virt-manager,则需要卸载它。
$ sudo apt-get remove virt-manager
接下来,设置 virt-manager 的构建环境并安装任何必要的先决条件。
$ sudo apt-get build-dep virt-manager
$ sudo apt-get install python-libvirt libgtk-3-dev libvirt-glib-1.0 gir1.2-gtk-vnc-2.0 gir1.2-spice-client-gtk-3.0 libosinfo-1.0 python-ipaddr gir1.2-vte-2.90 python-libxml2 python-requests
最后,下载最新的源码并安装,如下所示。
$ wget https://virt-manager.org/download/sources/virt-manager/virt-manager-1.3.2.tar.gz
$ tar -xf virt-manager-1.3.2.tar.gz
$ cd virt-manager-1.3.2
$ sudo python setup.py install
从命令行启动 virt-manager:
$ virt-manager


故障排除技巧
以下是在基于 Debian 的发行版上从源代码构建 virt-manager 时可能遇到的各种错误的解决方案。
1.导入错误:没有名为libvirt的模块
$ sudo apt-get install python-libvirt
2.导入错误:没有名为libxml2的模块
$ sudo apt-get install python-libxml2
3.导入错误:没有名为请求的模块
$ sudo apt-get install python-requests
4. 启动详细信息时出错:命名空间 GtkVnc 不可用
$ sudo apt-get install gir1.2-gtk-vnc-2.0
5. 启动详细信息时出错:命名空间 SpiceClientGtk 不可用
$ sudo apt-get install gir1.2-spice-client-gtk-3.0
6. ValueError:命名空间LibvirtGLib不可用
$ sudo apt-get install libvirt-glib-1.0
7. ValueError:命名空间 Libosinfo 不可用
$ sudo apt-get install libosinfo-1.0
8.导入错误:没有名为 ipaddr 的模块
$ sudo apt-get install python-ipaddr
9. 命名空间 Gtk 不可用:无法打开显示:localhost:10.0
$ sudo apt-get install libgtk-3-dev
10.导入错误:无法导入名称Vte
$ sudo apt-get install gir1.2-vte-2.90