Creating VMs within DaDesktop using Virt Manager
Introduction
When preparing training materials, virtualising a server inside DaDesktop is often beneficial. It may also be useful to virtualise one or two client machines simultaneously, either by replicating the same OS or by mixing Windows and Linux environments.
You can run 'Nested VMs' using either Virt Manager or VirtualBox. If you are using Linux, you may optionally use Vagrant alongside VirtualBox. For Windows 10 DaDesktop machines, VirtualBox is the applicable option.

Based on extensive testing, our recommendation is to use Virt Manager, as VirtualBox has exhibited several bugs in this context. Consequently, we do not currently suggest using VirtualBox in this specific manner.
The Virt Manager application leverages the libvirt library to deliver virtual machine management services. Its desktop interface facilitates the creation, deletion, and management of multiple virtual machines. While it is primarily designed for KVM VMs, it also supports other hypervisors, including Xen and LXC.
Virt Manager integrates seamlessly with Vagrant, as demonstrated by the following command:
apt install vagrant-libvirt
It is worth noting that fewer Vagrant boxes are available for libvirt/kvm compared to VirtualBox. However, these can be easily converted to work with libvirt, as illustrated in the following resource:
https://medium.com/@gamunu/use-vagrant-with-libvirt-unsupported-boxes-12e719d71e8e
The user interface offers a comprehensive overview of all VMs, including their status, CPU usage, live performance graphs for running instances, and resource utilisation statistics.
For those unfamiliar with Virt Manager, it shares similarities with VirtualBox but includes several key differences detailed below.
This serves as a solid guide for using virt-manager on Ubuntu Linux - https://www.debugpoint.com/virt-manager/
Why should I use Virt Manager instead of Virtualbox?
Advantages
- Performance is significantly superior. Virt Manager employs VirtIO drivers for storage, networking, and graphics, resulting in enhanced performance. Virtio drivers are KVM's paravirtualised device drivers, accessible for both Linux and Windows guest virtual machines hosted on KVM. The virtio package supports block (storage) devices, network interface controllers, and graphics. Since these drivers are open-source, they are easily installed if not pre-installed on your Linux distribution.
- Offers a wider range of configuration options.
- Integrates effectively with Vagrant.
- Components of VirtualBox are not fully open-source.
- Unlike VirtualBox, Virt Manager does not require module recompilation following a new kernel upgrade.
- VirtualBox is known to occasionally fail when a new kernel upgrade is required.
Disadvantages
- VirtualBox may be considered to have a slightly shorter learning curve.
- Configuring 'Host networking' rather than NAT is simpler in VirtualBox. However, NAT functions adequately for most networking use cases in both systems.
- While VirtualBox is available on numerous platforms, Virt Manager is exclusive to Linux.
Overall, we find that Virt Manager is the preferred choice for running servers within a DaDesktop machine.
Installation
Given the continuous improvements in libvirt, it is advisable to always use the latest non-LTS version of Ubuntu or Debian.
To install kvm and virt-manager, follow these brief installation notes. However, please refer to an up-to-date guide tailored to your preferred DaDesktop OS. Here is one recommended guide: https://www.debugpoint.com/virt-manager/
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 do I import or convert virtual machines ? While creating custom VMs tailored to your operating system and specifications is straightforward, importing an existing VM setup for a specific server or appliance is often preferred for more complex configurations. These are frequently provided as VMDK images, which can theoretically be added directly to Virt Manager, although this functionality is not entirely clear in the current version. Server images from Virtual Box cannot be imported directly but can be easily exported to other virtualisation formats, such as Open Virtualisation Format (.OVF), which Virt Manager handles well. Alternatively, you might use Vmware Converter if available, or Virt-V2V instead: https://www.redhat.com/en/blog/importing-vms-kvm-virt-v2v. Qemu-convert is also an excellent open-source tool that facilitates easy conversion between various virtual machine formats.
To convert from VirtualBox to Virt Manager KVM format, 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 environment. A method to easily upload files from your local machine to your DaDesktop machine has recently been implemented.
Alternatively, consider using a cloud file service such as Google Drive or Microsoft 365. These can be accessed by logging in to the service within the DaDesktop machine.
- When importing virtual machines from other formats, you will often need to adjust graphics and/or disk types. A significant benefit of Virt Manager is its robust support for VirtIO drivers. These are open-source, fully virtualised drivers that offer substantially better performance than standard disk, network, or graphic drivers. They are available for almost all operating systems, including excellent support for guest Windows 10 machines. If your Guest OS supports them, these are generally the preferred option for compatibility and performance when using Virt Manager (KVM). https://wiki.archlinux.org/title/Libvirt
- Optimal settings for virtual machines using Virt Manager VirtIO drivers are included in most open-source server operating systems today and can be easily installed on Windows. While virtio drivers are generally the best choice, other types may be necessary in specific scenarios. For most networking needs, NAT is sufficient. However, if a more complex setup requires Bridged Host networking, that option is available, though it is typically more challenging to configure.
https://wiki.archlinux.org/title/Virt-manager is an excellent introductory guide.
Running Windows requires additional steps, specifically slipstreaming VirtIO drivers to ensure the Windows 10 ISO boots correctly.
When selecting the hard disk format, .raw files offer the best speed unless snapshots are required. In that case, use the qcow2 format, albeit with slightly reduced performance. - Although Wayland functions well in most scenarios as a display manager, we advise continuing to use X11 for the time being. That said, it may be worth testing Wayland in your specific setup, as distributions are progressively enhancing their support for it.
- There is little benefit to using ksm, as while it works in nested environments and within Virt Manager, it provides minimal practical difference.
- Tech Support is available if you require assistance converting disk images for Virt Manager compatibility or when setting up Virt Manager for DaDesktop courses.
-
Where are disk image files stored within the filesystem? Virt Manager uses the following location to store image files, though this path is configurable and alternative locations can be used if preferred.
/var/lib/libvirt/images