---
title: "EndeavourOS、Manjaro等Arch系Linux安装QEMU+KVM、libvirt、Virt-Manager虚拟机"
date: 2025-01-17T16:06:14.000Z
tags: ["EndeavourOS", "Manjaro", "Arch", "Linux", "qemu", "libvirt", "virt-manager", "arch安装qemu", "arch安装libvirt", "arch安装virt-manager", "EndeavourOS安装qemu", "EndeavourOS安装libvirt", "EndeavourOS安装virt-manager", "Manjaro安装qemu", "Manjaro安装libvirt", "Manjaro安装virt-manager"]
categories: ["技术"]
canonical: https://www.zhaojian.net/arch-endeavouros-manjaro-linux-qemu-kvm-libvirt-virt-manager/
author: 赵健
---

QEMU、KVM、libvirt 和 Virt-Manager 是构建虚拟化解决方案的关键组件，它们各自承担不同的角色，但相互协作以提供强大的虚拟化功能。

**QEMU** 是一个开源的通用硬件模拟器和虚拟机管理器。既可以作为纯模拟器运行（性能较低），也可以结合 KVM 提供硬件加速的虚拟化（性能较高，媲美裸机）。

**KVM** 是 Linux 内核中的一个模块，直接运行在 Linux 内核上，借助硬件虚拟化技术，可达到接近原生硬件的性能。

**libvirt** 是一个开源的 API 和工具集，用于管理虚拟化平台（如 QEMU/KVM、Xen、VMware、Hyper-V 等）。

**Virt-Manager** 是一个基于图形界面的管理工具，本身并不直接管理虚拟机，专门用于管理 libvirt 提供的虚拟机。主要面向不熟悉命令行的用户，提供方便的图形化界面。

**KVM** Linux 内核自带，与 QEMU 集成后实现高性能的虚拟化。libvirt 简化了 QEMU 的复杂性，提供了命令行操作的管理功能，是虚拟化管理的核心工具。**Virt-Manager** 是 libvirt 的图形界面，适合需要GUI图形化界面的用户更便捷的管理虚拟机。

#### 安装虚拟机运行所需要的组件

```
yay -S qemu virt-manager virt-viewer dnsmasq vde2 bridge-utils openbsd-netcat ebtables swtpm

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

sudo usermod -aG libvirt $USER
```

1. qemu是一个通用且开源的虚拟机和模拟器。它允许您在一个操作系统中运行其他操作系统，支持完整的系统虚拟化和进程仿真。

2. virt-manager是一个图形化的虚拟机管理工具，简化了虚拟机的创建、管理和监控。

3. virt-viewer是一个轻量级的远程查看工具，允许连接到虚拟机的图形控制台（通过 SPICE 或 VNC 协议）。

4. dnsmasq是一个轻量级的 DNS 和 DHCP 服务器。Libvirt 使用它为虚拟机提供 NAT 网络连接（默认设置）。

5. vde2是一个虚拟交换机，用于创建虚拟网络环境。可选工具，主要用于高级虚拟网络配置，适合需要复杂网络拓扑的用户。

6. bridge-utils提供了桥接网络的管理工具，用于将虚拟机的网络接口桥接到物理网络接口。如果您需要虚拟机直接访问外部网络（桥接模式），这是必需的。

7. openbsd-netcat是一个用于网络调试和数据传输的工具，支持 TCP 和 UDP 协议。Libvirt 使用它进行一些网络相关的任务（例如，远程主机之间的数据传输）。

8. ebtables是一个用户空间工具，用于管理 Linux 内核的网桥过滤表。在桥接网络中，管理虚拟机的网络流量规则时需要使用。

9. swtpm是一个软件模拟的 TPM，允许虚拟机使用 TPM 功能而不需要物理硬件支持。支持 Windows 11 或其他需要 TPM 的应用场景。

#### 在QEMU、virt-manager下实现剪贴板共享、文件拖放功能

```
yay -S spice-vdagent qemu-guest-agent
sudo pacman -S spice-vdagent qemu-guest-agent
```

1. spice-vdagent 主要用于增强用户体验，提供剪贴板共享、文件拖放等功能。
2. qemu-guest-agent 则提供虚拟机与宿主机之间的管理和通信能力，允许虚拟机执行更高效的操作和管理任务。

安装完毕后，需在 virt-manager （Linux宿主机端）设置 虚拟机

1. 显示协议 Spice
	Spice 服务器 - 类型：Spice 服务器

![显示协议 Spice](/uploads/2025/01/spice2501.png)

2. 添加硬件（两个）：
	通道：名称选择 com.redhat.spice.0
	通道：名称选择 org.qemu.guest_agent.0

![添加硬件 通道 com.redhat.spice.0](/uploads/2025/01/spice2501a.png)

![添加硬件 通道 org.qemu.guest_agent.0](/uploads/2025/01/qemu.ga.png)

在虚拟机内（客户机、所安装的虚拟机系统）安装[Spice Guest Tools](https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe)软件，实现剪贴板共享、文件拖拽等功能的支持。

如运行时出现“启动域时出错: 所需操作无效：网络 'default' 未激活”，需启动 default 网络。

启动 default 网络

```
sudo virsh net-start default
```

设置开机自动启动

```
sudo virsh net-autostart default
```