Virtual Machine Manager : the graphical interface for QEMU

Jun 30, 2024 by Thibault Debatty | 353 views

Virtualization Linux

When discussing desktop hypervisors, one usually think to the main commercial players: VMware Workstation, VMware Fusion (for Mac), Hyper-V (built-in Windows) and VirtualBox. Actually, on Linux QEMU/KVM is also a solution thanks to the Virtual Machine Manager.


Virtual Machine Manager (or virt-manager) is a graphical interface developed by Red Hat for managing virtual machines through the libvirt daemon. So the architecture is similar to something like Docker: the virtual machines are actually managed by a daemon running in the background (libvirtd), and the interface communicates with the daemon using a unix socket.

Installation and first steps

On Debian and derivatives, you can install virt-manager with:

sudo apt install virt-manager

Just to be sure, you can check that libvirt is correctly running in the background with:

sudo service libvirtd status

Also, to allow communication with the daemon, you must be part of the libvirt users group:

grep libvirt /etc/group

This also means that, after the installation, you must logout and login again...

As you may see on the screenshot here-above, virt-manager can show in real time the CPU, memory, network and storage utilization of every guest machine. But this is not enabled by default. You can enable these by heading to Edit > Preferences > Polling


Guest OS Support

Until now, virt-manager supported every OS I could test, including Ubuntu Server, Linux Mint and Windows 11.



Guest configuration Interface

The guest configuration interface may look a little 'rough on the edges' compared to competitors like VirtualBox, but it actually offer more details and control.


For example, virt-manager allows to create a virtual disk using iSCSI, GlusterFS as a backend.


Storage pools

In virt-manager all storage media are organized in pools. This includes DVD ISO images that you use during installation. This means that, to use an ISO for installing a new VM, you must first create a pool for the folder containing your ISO images.

To do so, open the menu Edit > Connection Details (the connection represent the host computer). Then open the Storage tab. The left column lists all existing storage pools. At the first one, there should be only the default storage pool.


To add a storage pool for your ISO images, click on the + icon at the bottom left, type an appropriate name, for the Type select "Filesystem Directory", and for the Target Path select the directory where your ISO images are saved...


You are now all set to create your first VM. The process is quite straightforward...

Remote desktop

By default, virt-manager will enable the SPICE (Simple Protocol for Independent Computing Environments) server for each VM, which means you can access the screen and keyboard of the VM using the built-in SPICE client, or any SPICE compatible client like remmina.


Shared clipboard and guest auto resize

Shared clipboard between the host and the guest and guest auto resize are also supported but, just like VirtualBox and others, you must install a helper on the VM.

Ubuntu / Debian VM

For Ubuntu, Debian and other derivatives, you can install the SPICE guest with:

sudo apt install spice-vdagent

Then reboot your VM and check that the spice-vdagent service is running:

sudo systemctl status spice-vdagent

Shared clipboard should now be working.

You can also enable guest auto resize in the menu: View > Scale Display > Auto resize VM


For Windows guests, you can download the latest version of the installer from


Pay attention, there are 2 installers to download and run : virtio-win-gt-x64.msi and virtio-win-guest-tools.exe. Then reboot the VM.

Shared clipboard should now be working. And you can now enable guest auto resize in the menu: View > Scale Display > Auto resize VM.

This blog post is licensed under CC BY-SA 4.0

Performance of virtual storage (part 2) : QEMU
In a previous blog post, I evaluated the performance penalty of virtual storage. I compared different host filesystems and different hypervisors (including QEMU). The conclusion was pretty harsh: in all tested configurations, virtual disks are almost 10 times slower than host drives. In this blog post, I will test additional QEMU configuration options, to see if I can get better results...
Performance penalty of storage virtualization
In a previous blog post, I showed how to use sysbench to benchmark a Linux system. I ran the tool on various systems I had access to, and I was staggered by the performance penalty of virtual storage: a virtual disk (vdi) is roughly 10 times slower than the actual disk it is reading from or writing to. In this blog post, I want to show the results of some additional tests that, sadly enough, will only confirm this observation...
New ways to run Kali Linux on Windows using WSL
Some time ago I wrote a blog about Installing Linux Bash Shell (and Metasploit) on Windows 10. This is great, when we want to enjoy the best of both worlds- keep using Windows, with its out-of-the-box configuration and set-up, and still be able to use the powerful tools available for the Linux distribution. In my previous blog I went through the steps necessary for setting up WSL and installing an Ubuntu and Kali Linux distribution. Since then, a lot of advancements have been made to facilitate the use of these distributions for Windows Users.
This website uses cookies. More information about the use of cookies is available in the cookies policy.