在 Ubuntu 上安装和使用 Qemu

系统 Linux
学习如何在 Ubuntu 中正确安装 Qemu,然后在虚拟机中配置 Linux 发行版。

如果你需要运行 Linux 虚拟机,Qemu 是目前最快的管理程序之一,甚至没有“之一”。

除了速度之外,你还可以获得出色的配置选项。即使你不是一个资深用户,它也给你足够的调整空间。

在本教程中,我将引导你完成:

  • 在 Ubuntu 上安装 Qemu 和 KVM
  • 在 Qemu 上安装另一个发行版
  • 在 Qemu 中启用共享文件夹、自动调整大小和复制粘贴(可选,但会使你的虚拟机体验更顺畅)。

那么让我们从安装开始吧。

在 Ubuntu 上安装 Qemu 和 KVM

✋ 在开始安装之前,让我们检查一下你的机器是否支持虚拟化。

要做到这一点,请使用以下命令:

LC_ALL=C lscpu | grep Virtualization

如果你有一个英特尔处理器,它应该带来以下输出:

检查该计算机是否支持基于硬件的虚拟化

检查该计算机是否支持基于硬件的虚拟化

如果你有一个 AMD 处理器,它应该得到以下输出:

Virtualization:                  AMD-V

另外,确保你的系统有多个处理器核心,这样你可以分配一些给你的虚拟机,并且仍然有足够的处理能力提供给宿主机。

如果你不确定,使用下面的命令,输出应该大于零

egrep -c '(vmx|svm)' /proc/cpuinfo

检查 Linux 中系统的核心总数和线程数

检查 Linux 中系统的核心总数和线程数

一旦你都准备好了,你就可以用以下命令在 Ubuntu 上安装 Qemu 和 KVM:

sudo apt install qemu qemu-kvm virt-manager bridge-utils

安装结束后,重新启动你的系统

将用户添加到适当的组中

为了使 Qemu 工作,你必须 将你的用户加入两个组libvirt-kvm 和 libvirt

要做到这一点,请逐一使用以下命令:

sudo useradd -g $USER libvirt
sudo useradd -g $USER libvirt-kvm

接下来,启用并启动 libvirt 服务:

sudo systemctl enable libvirtd.service && sudo systemctl start libvirtd.service

这就行了!Qemu 的安装已经完成。

用 Qemu 安装另一个 Linux 虚拟机

📋 请下载你想在 Qemu 虚拟机中安装的 Linux 发行版的 ISO 文件。

首先,从系统菜单中打开 虚拟机管理器Virtual Machine Manager:

从系统菜单中启动 Qemu

从系统菜单中启动 Qemu

接下来,点击 “文件File” 菜单,选择 “新建虚拟机New Virtual Machine” 选项:

在 Qemu 中创建新的虚拟机

在 Qemu 中创建新的虚拟机

从这里,选择第一个选项 “本地安装介质Local install media”,这将允许你从文件管理器中选择 ISO:

选择本地 ISO 文件以在 Qemu 中创建新的虚拟机

选择本地 ISO 文件以在 Qemu 中创建新的虚拟机

接下来,你将被要求添加 ISO 文件。在这里,点击 “浏览Browse” 按钮;它将打开一个新的提示窗口,在那里,点击 “浏览本地Browse Local”。

它将打开文件管理器,从那里选择 ISO 文件:

在 Qemu 中导入 ISO 文件

在 Qemu 中导入 ISO 文件

在大多数情况下,ISO 文件会被检测到,但如果你发现它没有自动检测到,请按照以下步骤操作:

  • 取消勾选 “自动从安装介质/源检测Automatically detect from the installtion media / source” 选项
  • 选择 “常见的 LinuxGeneric Linux” 选项

解决 Qemu 中未检测到 ISO 的问题

解决 Qemu 中未检测到 ISO 的问题

接下来,你将被要求根据你的需要分配内存和存储。我建议桌面版至少要有 2 个核心、4GB 内存和 25GB 的存储空间:

在 Qemu 中为虚拟机分配内存、内核和存储空间

在 Qemu 中为虚拟机分配内存、内核和存储空间

📋 除了磁盘空间,CPU 和内存等系统资源只在 VM 中运行操作系统时使用。

最后,给你的虚拟机起一个合适的名字;完成后,点击 “完成Finish” 按钮:

在 Qemu 中命名你的虚拟机

在 Qemu 中命名你的虚拟机

它将加载 ISO,所以你可以从这里开始安装。

这就完成了。你可能会觉得这已经很不错了,但如果你启用共享文件夹、剪贴板共享等,你会更喜欢它。下面的几节将介绍如何做到这一点。

在 Qemu 中启用共享文件夹(可选)

在本节中,我将向你展示如何将宿主机的现有目录与虚拟机共享。

要做到这一点,你必须执行以下步骤:

  • 通过 Qemu 中的虚拟机设置添加一个共享文件系统
  • 在虚拟机中挂载文件系统

因此,首先从系统菜单中打开虚拟机管理器,选择虚拟机,并点击 “打开Open” 按钮来管理控制台:

打开 Qemu 中虚拟机的设置

打开 Qemu 中虚拟机的设置

现在,点击 “信息Info” 按钮,选择 “内存Memory” 并启用共享内存:

在 Qemu 中启用共享内存

在 Qemu 中启用共享内存

接下来,点击 “添加硬件Add Hardware” 按钮,选择 “文件系统Filesystem” 选项。

在这里,你必须做以下工作:

  • 在 “源路径Source Path” 部分添加一个你想共享的目录的路径
  • 在 “目标路径Target Path” 部分添加该目录的名称

在 Qemu 中创建共享文件夹

在 Qemu 中创建共享文件夹

完成后,点击 “完成Finish” 按钮,启动虚拟机。

在虚拟机中,打开终端,使用下面的语法来挂载共享目录:

sudo mount -t virtiofs sharename path/to/shared/directory

在我的例子中,它是 Downloads 目录,所以我将使用下面的方式:

sudo mount -t virtiofs Downloads /home/sagar/Downloads

在 Qemu 中挂载共享文件夹

在 Qemu 中挂载共享文件夹

这就行了。

但这是一个临时的解决方案。

要使它成为永久性的,你必须在虚拟机的 /etc/fstab 中创建一个条目。

要这样做,首先,用下面的方法打开 /etc/fstab 配置文件:

sudo nano /etc/fstab

按下Alt + /在 nano 文本编辑器中转到文件的末尾 ,并使用以下语法创建一个条目:

sharename path/to/shared/directory virtiofs defaults 0 0

这是我的配置,看起来像这样:

使 Qemu 中的共享文件夹永久化

使 Qemu 中的共享文件夹永久化

一旦完成,保存更改并退出 nano 文本编辑器。

这里我展示了我是如何在主机上的 Downloads 目录下创建一个新文件,并且这些变化反映在我的虚拟机上:

在 Qemu 中使用共享文件夹

在 Qemu 中使用共享文件夹

因此,现在你可以使用这个共享文件夹在主机和虚拟机之间传输文件,没有任何问题了!

在 Qemu 中启用共享剪贴板(可选)

要启用共享剪贴板,你所要做的就是在虚拟机中安装 spice-vdagent 工具。

因此,如果你的虚拟机是基于 Ubuntu/Debian 的,你可以使用以下方法:

sudo apt install spice-vdagent

对于基于 Arch 的发行版:

sudo pacman -S spice-vdagent

对于基于 Fedora 的发行版:

sudo yum install spice-vdagent

一旦你完成了安装,重启你的虚拟机,剪贴板应该可以如期工作了。

在 Qemu 中启用自动调整大小(可选)

自动调整大小的功能没什么,但当你调整虚拟机窗口的大小时,虚拟机的显示会立即适应大小的变化:

Qemu 中的自动调整大小

Qemu 中的自动调整大小

要启用 Qemu 中的自动调整大小功能,你必须遵循 2 个简单的步骤:

  • 点击 “视图View”(从顶部菜单栏)。
  • 选择 “缩放显示Scale Display” 并选择 “总是Always” 选项。

这就是我这边看到的情况了。

想要使用 Qemu 的即插即用版本?

在本教程中,我介绍了如何在 Qemu 中手动安装虚拟机,但如果我告诉你,你可以自动完成整个过程,如分配存储空间、内存等步骤呢?

是的,它提供了同样的效率,但当你想尽快创建一个新的虚拟机时,它就会派上用场!这个工具叫 Quickgui,我们有一个专门的安装教程:

用基于 Qemu 的 Quickgui 轻松地创建虚拟机

我希望你会发现这个指南对你有帮助。

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2011-05-24 09:33:40

UbuntuOpenStackNova

2018-01-16 10:19:20

2023-01-28 21:27:27

2018-09-10 08:20:16

Ubuntu LinuGitGitHub

2015-10-23 14:10:38

TerminatorUbuntuLinux

2018-02-26 08:14:20

LinuxDocker容器

2014-05-30 10:08:06

2019-05-31 16:10:42

UbuntuLinuxBudgie桌面

2021-10-02 10:15:19

UbuntuLinuxAnyDesk

2018-02-25 11:03:00

LinuxUbuntuEncryptpad

2014-09-11 11:32:21

Ubuntu运维

2015-09-11 16:47:51

安装DockerUbuntu

2022-09-14 11:31:37

MySQL数据库管理系统

2019-09-11 14:30:45

UbuntuLinuxR语言

2016-09-30 13:48:25

UbuntuPython报警系统

2010-05-25 09:04:55

2011-09-07 13:33:51

ubuntuUbuntu Twea

2017-08-09 13:13:25

LinuxUbuntuZabbix

2019-04-28 10:00:11

UbuntuLinuxMySQL

2012-12-31 10:36:56

点赞
收藏

51CTO技术栈公众号