Setting Up VMs in DaDesktop with Virt Manager
Introduction
When developing course materials, it is beneficial to virtualize a server within DaDesktop. It is also common to virtualize one or two client machines in the same environment, whether they run the same operating system or a combination of Windows and Linux.
Creating 'Nested VMs' can be achieved using either Virt Manager or VirtualBox. If using Linux, you may optionally include Vagrant. If the DaDesktop machine runs Windows 10, VirtualBox is the applicable tool.

Based on extensive testing, we recommend using Virt Manager. We do not advise using VirtualBox in this specific context due to a few known bugs.
The VirtManager application leverages the libvirt library to deliver virtual machine management services. Its desktop interface simplifies the creation, deletion, and management of multiple virtual machines. While it is primarily designed for KVM VMs, it also supports other hypervisors such as Xen and LXC.
Virt Manager integrates seamlessly with Vagrant. To get started, simply run:
apt install vagrant-libvirt
Please note that while fewer Vagrant boxes are directly available for libvirt/kvm compared to VirtualBox, they can be easily converted to work with libvirt as demonstrated here: -
https://medium.com/@gamunu/use-vagrant-with-libvirt-unsupported-boxes-12e719d71e8e
The user interface offers a comprehensive overview of all VMs, displaying their status, CPU usage, real-time performance graphs for running instances, and resource utilization statistics.
If you are new to Virt Manager, note that while it shares similarities with VirtualBox, there are several key differences outlined below.
For a solid guide on using virt-manager on Ubuntu Linux, please refer to: https://www.debugpoint.com/virt-manager/
Why choose Virt Manager over VirtualBox?
Advantages
- Performance is significantly superior. Virt Manager utilizes VirtIO drivers for storage, networking, and graphics, resulting in enhanced performance. Virtio drivers are KVM's paravirtualized device drivers, available for Linux and Windows guest virtual machines hosted on KVM. The virtio package supports block (storage) devices, network interface controllers, and graphics. Being open source, these drivers are easily installed on your Linux distribution if not pre-installed.
- A broader range of configuration options is available.
- It pairs effectively with Vagrant.
- Components of VirtualBox are not fully open source.
- Virt Manager does not require module recompilation after a new kernel upgrade, a frequent requirement for VirtualBox.
- VirtualBox is occasionally prone to issues following kernel upgrades.
Disadvantages
- VirtualBox may have a slightly gentler learning curve.
- Configuring 'Host networking' instead of NAT is generally easier in VirtualBox, although NAT works well for most networking scenarios in both systems.
- While VirtualBox supports many platforms, Virt Manager is exclusively available on Linux.
Overall, for running servers within a DaDesktop machine, Virt Manager is the preferred solution.
Installation
Since libvirt is continuously improving, we recommend using the latest non-LTS version of Ubuntu or Debian.
To install kvm and virt-manager, follow these brief instructions. However, we advise consulting an up-to-date guide tailored to your specific DaDesktop OS. One such guide is available here
sudo apt install virt-manager
sudo adduser student libvirt sudo systemctl restart libvirtd
Reboot the DaDesktop machine, then launch Virt Manager from the Applications menu.
Configuration
- How to import or convert virtual machines? While creating VMs tailored to your specific operating system and specifications is straightforward, more complex setups often benefit from importing an existing VM configuration for a specific server or appliance. These are frequently supplied as VMDK images. Although adding them directly to Virt Manager is not clearly supported in the current version, VirtualBox server images cannot be imported directly. However, they can be easily exported to other virtualization formats, such as Open Virtualisation Format (.OVF), which Virt Manager supports. Alternatively, you can use VMware Converter if available, or Virt-V2V as shown here: https://www.redhat.com/en/blog/importing-vms-kvm-virt-v2v. Qemu-convert is another excellent open-source tool for converting between different virtual machine formats.
To convert from VirtualBox to Virt Manager KVM format, please follow these instructions: https://ostechnix.com/how-to-migrate-virtualbox-vms-into-kvm-vms-in-linux/ -
The most efficient way to import large files into a standalone instance. A new feature allows you to easily upload files from your host machine to your DaDesktop machine.
Alternatively, consider using cloud storage tools like Google Drive or Microsoft 365. You can then access these files by logging into the service within the DaDesktop machine.
- Importing virtual machines from other formats often requires adjusting graphics and/or disk types. One of the strengths of Virt Manager is its robust support for VirtIO drivers. These are fully virtualized, open-source drivers that offer significantly better performance than standard disk, network, or graphics drivers. They are available for nearly all operating systems, including excellent support for guest Windows 10 machines. If your Guest OS supports them, VirtIO drivers are usually the preferred choice for compatibility and performance in Virt Manager (KVM). See: https://wiki.archlinux.org/title/Libvirt
- Optimal settings for virtual machines in Virt Manager. VirtIO drivers are included in most modern open-source server operating systems and can be easily installed on Windows. While virtio is generally the best option, other types may be necessary in specific cases. For networking, NAT is usually sufficient unless a complex setup requires Bridged Host networking, which is more challenging to configure.
A great introductory guide is available here: https://wiki.archlinux.org/title/Virt-manager.
Running Windows requires additional steps, specifically slipstreaming VirtIO drivers to ensure the Windows 10 ISO boots correctly.
For hard disk format, .raw files offer the best speed unless snapshots are needed. In that case, use qcow2 format, though it is slightly slower. - Although Wayland functions well as a display manager in most scenarios, we recommend continuing to use X11 for now. That said, it is worth experimenting with Wayland in your specific setup, as distro support for it is improving continuously.
- There is no need to use KSM, as while it works in nested environments and Virt Manager, it provides negligible practical benefits.
- Tech Support is available if needed for converting disk images for Virt Manager compatibility and for setting up Virt Manager for DaDesktop courses.
-
Where are disk image files located in the filesystem? Virt Manager stores image files in the following location by default, though this is configurable if you prefer a different path.
/var/lib/libvirt/images