Virt-Manager with QEMU on Arch Linux
Last updated on March 30, 2025Virt-Manager is a graphical user interface for managing virtual machines through the Libvirt virtualization API. This tool simplifies the process of creating and managing virtual machines without requiring direct command-line interaction.
This guide focuses on implementing KVM (Kernel-based Virtual Machine) to achieve high-performance virtualization using Linux’s native hypervisor. While other solutions like VirtualBox or VMware are available, KVM offers superior performance and native Linux integration.
Prerequisites
Before proceeding with the installation, verify that your system supports hardware virtualization. This capability is essential for KVM performance:
Hardware Requirements
Verify virtualization support in your system:
LC_ALL=C lscpu | grep Virtualization
Note: For Intel processors, look for
VT-x
in the output. AMD processors will showAMD-V
instead.
Ensure KVM modules are properly loaded:
lsmod | grep kvm
The output should display kvm_intel
for Intel processors or kvm_amd
for AMD processors, along with the base kvm
module.
BIOS/UEFI Configuration
Ensure virtualization is enabled in your system’s BIOS/UEFI settings:
- Intel systems: Enable
Intel VT-x
andIntel VT-d
- AMD systems: Enable
AMD-V
andAMD IOMMU
Important: If you need to enable these settings, a system restart will be required.
Install dependencies
Install the required packages:
sudo pacman -S libvirt virt-manager qemu-full dnsmasq dmidecode
Enable and start the required system services:
sudo systemctl enable --now libvirtd.service virtlogd.service
Configuration
User Permissions
Add your user to the libvirt
group to enable management of virtual machines without root privileges:
sudo usermod -aG libvirt $USER
Note: Log out and back in for the group changes to take effect.
Network Configuration
Enable automatic start of the default virtual network:
sudo virsh net-autostart default
sudo virsh net-start default
This configuration prevents the common error:
"Error starting domain: Requested operation is not valid: network 'default' is not active"
Verification
Verify the installation by launching Virt-Manager:
virt-manager
The application should start without requiring root privileges and display no network connection errors.
References
- Libvirt Documentation - Comprehensive guide to libvirt
- Virt-Manager Wiki - Official Arch Linux documentation
- QEMU - QEMU configuration and usage guide