本文最后一次在 2022 年 04 月06 日更新,部分内容可能已经过时!

视频点此

曾经有一个半个钟头的视频,大概演示了一下如何在Optimus模式的笔记本电脑上实现英伟达显卡的虚拟机直通,后来又用了一个视频简单说了说如何在Linux中安装KVM虚拟机以及一个简单的图形界面。不过得益于KVM虚拟机在Linux上面的优异表现,KVM虚拟机的图形界面程序也算是层出不穷。这其中不乏观感不错、使用简单的图形界面程序。今天就来看一个,我认为可以当作是virtual box平替的KVM图形界面程序——Quickgui

简单来说,quickgui是quickemu和quickget的一个图形化前端,而quickemu是简化qemu建立KVM虚拟机的一个终端脚本。因此与virt-manager等KVM图形化管理器差异的地方,在于quickgui侧重于帮助用户根据选择的系统和自身电脑的配置一键配置好一个可用的KVM虚拟机,并统一管理已经建立的KVM机器。在这个过程中甚至不需要用户事先准备安装镜像文件。那么接下来就看看如何安装。

就像前面说的,quickgui是quickemu和quickget的前端,因此首先需要安装好这两个。前往quickemu的github,可以看到对于arch用户,可以通过aur直接安装,而乌班图用户则可以添加它的ppa并完成安装。但我现在用的是opensuse,就需要手工来安装了。

在quickemu的页面里写了所需的依赖,其中要求QEMU版本需要在6.0或更高。但openSUSE官方源中,其版本刚刚到达5.3,所以首先需要做的就是升级QEMU。

  1. 直接打开终端,输入opi qemu,在弹出的源列表中选择Kernel:tools,然后按照提示更新提供方,完成。
  2. 打开YaST的软件管理模块,切换到模组标签,找到KVM主机服务器,将右侧打勾的版本全部切换到刚刚添加的源上(如有),确定。

到此,QEMU版本的升级就完成了。

如果你是全新安装的openSUSE,可能还有一些依赖需要你去补齐。可以按照github的指引进行安装,或者先按照下述步骤安装好quickemu与quickget尝试运行,失败的话再查看依赖问题。

  1. 克隆quickemu到一个文件夹:git clone --depth=1 https://github.com/wimpysworld/quickemu
  2. 全局安装quickemu到系统:sudo update-alternatives --install /usr/local/bin/quickemu quickemu /path/to/quickemu 50,其中,/path/to/quickemu为刚刚保存了克隆工程的文件夹,其中可以找到quickemu这个脚本
  3. 将quickget全局安装到系统,命令同2,只是将所有的quickemu更改为quickget

到此,你应该可以直接在终端中使用命令quickemuquickget来直接调用这两个脚本而无需再进入到保存的文件夹中执行了。这也意味着我们已经建立好quickgui所需的基本环境了。接下来就是安装quickgui

  • 前往quickgui的github,下载最新发布的预编译包,解压到某个目录下

进入这个目录,双击quickgui,一个好看的管理界面就正常启动了。

它的功能非常简单:管理已有的机器与建立新机器。初次使用时,可以通过新建机器功能快速建立一个KVM虚拟机。而且这个建立只需要我们选择好需要的操作系统版本和保存路径,点击下载,软件便会自动下载并部署好,等待启动。待下载完成,切换到管理已有机器的界面,便可以看到刚刚创建的虚拟机了。

管理界面也很简洁,只有三个可以操作的功能:启动、停止、删除。如果你是arch 或者乌班图用户,此时应该可以通过启动按钮直接简单的打开这个虚拟机了。但对于openSUSE,你会发现无法正常显示虚拟机窗口,再等待一会儿就恢复到了启动前的状态了。这是为什么呢?

因为openSUSE的QEMU默认不到有fd文件——KVM的efi程序,同时已经不再支持sdl模式运行。所以我们需要针对这两个进行调整。

首先,补全fd文件。

  1. 前往https://www.kraxel.org/repos/jenkins/edk2/下载对应你的电脑架构的rpm包
  2. 无需安装,直接找到其中保存了fd文件的文件夹,将这堆fd文件解压到/usr/share/qemu
  3. 将其中的ovmf_VARS-pure-efi.fd重命名为ovmf_VARS.fd

到此,fd文件我们就补齐了。

当然,只从rpm包中解压出ovmf_VARS-prue-efi.fd也是可行的。这里全部解压只是为了方便而已,也为了避免之后特殊需要时候再次补充。

对于sdl支持,我尚未找到什么好的解决方法,所以我目前的方式就是通过终端来启动构建好的虚拟机。

  1. 进入到创建虚拟机时选择的保存路径,应该可以看到对应这个虚拟机的conf文件
  2. 使用命令启动虚拟机:quickemu --vm 配置文件.conf --display gtk

到此,我们便成功构建并打开一个KVM虚拟机了。

仅有一条评论

  1. 膜拜大佬

添加新评论