How to Install and Use virt-manager Virtual Machine Manager in Ubuntu and Other Linux

5 min


A comprehensive guide on how to install and use virt-manager virtual machine emulator in Ubuntu and other Linux systems.

The virt-manager application or package uses the libvirt library to provide virtual machine management services. It has a desktop interface that helps to create, delete, and manage multiple virtual machines.

It is primarily used for KVM VMs but can support other hypervisors as well, such as Xen, and LXC.

The user interface provides a summary view of all VMs their status, CPU usages, LIVE performance graph of running VMs, and resource utilization statistics.

There are other popular Virtual machine managers available such as GNOME Boxes and Oracle Virtual box. GNOME Boxes is easy, but it’s buggy and depends heavily on GTK and GNOME-related packages. Oracle Virtual Box is good, but I feel it is unnecessary and complex and has a complicated UI.

But the virt-manager is super easy and can be used on any Linux distribution.

When you install the virt-manager package, it comes with five components.

virt-install: Command-line utility to provision OS
virt-viewer: The UI interface with graphical features
virt-clone: Command-line tool to close existing inactive hosts
virt-xml: Command-line tool for easily editing libvirt domain XML using virt-install’s command-line options.
virt-bootstrap: Command tool providing an easy way to set up the root file system for libvirt-based containers.


Contents


How to Install virt-manager

The virt-manager is in most of the Linux distribution’s official repo. You can run the below commands via the terminal to install virt-manager for respective systems.

Debian, Ubuntu, Linux Mint, elementary and other Ubuntu-based distributions

sudo apt-get install virt-manager

Fedora, RHEL

sudo dnf install virt-manager

Arch

pacman -S virt-manager

After installation, you can find the option Virtual Machine Manager in the application menu.

How to Use virt-manager

Open virt-manager from the application menu. If you see an error as libvirtd not running or Not Connected, then check the Troubleshooting section at the end of this guide.

After opening, right-click on the QEMU/KVM and click New.

New VM
New VM

Select Local Install Media, which is for the .ISO images. You can choose other options as well if you want.

Local Install
Local Install

In the next window, click browse and then Browse Local.
Select the .ISO file and select the Other Operating system.

Select the ISO file
Select the ISO file

Keep the Memory as 1024 MB and CPU 1 Core. Or you can change it as per your need.

Memory and CPU
Memory and CPU

In the next window, uncheck the Enable Storage for this virtual machine.

Storage
Storage

Give the name of your virtual machine so that you can identify it later on. For this guide, I am using Linux Lite, so I added Linux-lite as VM name.

Add a VM Name
Add a VM Name

Click Finish.

If all goes well, you can see the virtual machine is up and running for you.

Now you can play around with the newly created VM via virt-manager.

virt-manager running with VM
virt-manager running with VM

Where does the virtual machine images stored by virt-manager?

When you create a virtual machine, the images are stored on the disk. Different virtual machine software stores them in different places. The virt-manager stores them in /var/lib/libvirt/images directory. See example screenshots below.

/var/lib/libvirt/images
Place where virt manager stores its images
Place where virt manager stores its images

How to delete a virtual machine image in virt-manager?

The virtual machine concept is fantastic in a way that whenever you want, you can delete the image and start over. Or do a different thing or two. So deleting a virtual machine is straightforward. Here’s how.

  • From the main window, make sure you see the list of virtual machines.
  • Right-click, and from the context menu, select Delete. In the next pop-up, it will warn you to delete the disk images. If you want to clear up everything in your disk, then select Delete to delete the virtual machine.
delete virtual machine using virt-manager
delete virtual machine using virt-manager
delete virtual machine using virt-manager -2
delete virtual machine using virt-manager -2

Troubleshooting

1. Unable to connect to libvirt qemu:///system

When launching virt-manager, if you see the below error, follow the steps described below.

Unable to connect to libvirt qemu:///system
Verify that the 'libvirtd' daemon is running.

First, ensure that the libvirtd daemon is running with the below command.

sudo systemctl start libvirtd

Close the application if opened from the menu.

Then open a terminal and add your user account to the libvirt group. In the below command debugpoint is the user name. Replace it with your own user.

sudo adduser debugpoint libvirt

Make sure to restart the daemon

sudo systemctl restart libvirtd

You can check whether the user is added to the group via id command as below.

id debugpoint
Verify the user is added to libvirt group
Verify the user is added to libvirt group

You should not see any error as above or.’QEMU/KVM - Not connected'.

2. Error starting domain: Requested operation is not valid: network ‘default’ is not active

The libvirt package virtual network is called “default”, and it should start when libvirt daemon (libvirtd) is marked to autostart. But if for some reason it fails to start, it gives the following error.

Error starting domain: Requested operation is not valid: network 'default' is not active
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 65, in cb_wrapper
callback(asyncjob, *args, *kwargs) File "/usr/share/virt-manager/virtManager/asyncjob.py", line 101, in tmpcb callback(args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 57, in newfn
ret = fn(self, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/domain.py", line 1329, in startup
self._backend.create()
File "/usr/lib/python3/dist-packages/libvirt.py", line 1353, in create
raise libvirtError('virDomainCreate() failed')
libvirt.libvirtError: Requested operation is not valid: network 'default' is not active

To fix this, start the network from the command line using the below command.

sudo virsh net-start default

3. Scaling and Display configuration

More often than not, you find the resolution problem in Virtual Machine Manager. The guest OS resolution is not properly detected for various reasons, creating larger displays/icons in the guest OS. It doesn’t match your Host OS resolution. There are various ways to fix this. If you want to scale your guest OS resolution, use the following method.

  • Choose Video Model = virtio
Video Model in virt-manager
Video Model in virt-manager
  • View > Scale Display > Always
Scale Display in virt-manager
Scale Display in virt-manager
  • Now, change the resolution in the guest OS.

I hope this guide helps you to install and use virt-manager in Linux. Drop a comment if you are having trouble.


Arindam

Creator and author of debugpoint.com. Connect with me via Telegram, 𝕏 (Twitter), or send us an email.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

5 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments