Graphical desktop front ends for KVM and Qemu
Jqemu
The Jqemu [16] software is based on Java, as the name suggests. Your advantage: It works across platforms and offers the same interface everywhere. Jqemu is not too picky on Linux and can use either Oracle's Java environment or the free OpenJDK runtime.
The application is available from the website as a prebuilt (32- and 64-bit) package and can be used immediately after unpacking the zip archive. To do so, launch a terminal by typing:
java -jar jqemu.jar
You do not need administrative privileges for this. If you want to add Jqemu to the menu structure of the host operating system, you will need to do this manually.
After starting, Jqemu shows the user a clearly arranged window with three areas: Various settings and options are available in the top horizontal menubar; the buttonbar below takes you to the most important functions. The list window on the left displays one or more virtual machines.
A large configuration area waits for the virtual machines in the right pane of the program window. Multiple horizontal tabs divide the area into groups. The settings are initially modeled on those of Qemu: Jqemu suggests assigning a no longer quite state-of-art 128MB RAM to each newly created virtual machine – this is not enough for most virtual systems. The other options need some attention: For 64-bit and 64-bit ISOs, you must select the correct Qemu binary file as Jqemu assumes the 32-bit version by default.
Jqemu provides similarly extensive options to the other subjects when it comes to configuring the guest systems. But Jqemu arranges them in a more confusing way than Aqemu or VMM.
Because the software does not have a help function, some settings cause confusion: For example, the Network gives you the ability to configure network access. This is not necessary in some cases, as the guest systems automatically set this up and Internet access is available without further intervention.
The graphics and audio settings need special attention. An incorrect graphics setup or faulty audio options can cause the virtual machine to freeze during startup. Some documentation would be useful here, particularly for newcomers (Figure 9).
To use an ISO image as a bootable disk, the Jqemu user has to modify several options. In the General tab, look for the Boot entry and enable the CD-ROM option. Then, in the same dialog, enter the path to the ISO image for the CD-ROM entry below the Disks section.
Increasing the memory size in Memory is also advised. Although Slim Linux distributions like Minux or Slitaz will run easily with the default 128MB, all of the well-known Linux systems need at least 1GB memory in the virtual machine. You will also want to go to the Advanced tab and increase the number of processor cores in the Simulate an SMP system option, as the larger distributions often run faster on multiple-core systems.
The Options menu, which you can access via the buttonbar, defines the supported processor architectures. In the QEMU PC field of the Dependencies section, you can define the path to the Qemu binary files, including the actual emulation file. The Qemu files typically reside in the /usr/bin/
directory. You can then select the required emulation from a small file manager (Figure 10).
If you do not just want to run live systems operate on your virtual machines, but actually install the systems, you need to enter the path information for the drives to use in General | Discs. Unlike Aqemu, Jqemu does not automatically create the disks, but expects you to point the way here. You can use the Tools | Images | Create menu to create a disc image of any size, selecting from a large number of image formats as you do so. This will ensure that images work with other software packages. Jqemu is the only single application that also supports the VDI format, which Oracle's VirtualBox uses as the default format for virtual machines.
If the hardware supports this, Jqemu also allows the simultaneous operation of multiple virtual machines on a host. It packages them – like the other candidates – in dedicated instances of Qemu. They are thus completely isolated from each other. In contrast to other solutions, however, the admin has to manually shut down the individual virtual machines in their respective windows on exiting – centralized switching via ACPI commands, such as in VirtualBox, is missing.
The user does not see an overview of the resource consumption of open machines, unlike with VMM. Jqemu is thus less of a central control instrument for virtual machines and merely a graphical front end and configuration interface for Qemu.
Jqemu also provides a log function that helps you find and resolve errors in the configuration of a virtual machine. But you first need to enable logging manually. To do so, go to the Debug/Expert tab and enable the option Output log items to /tmp/qemu.log. Using the Log Items option, you can then define the content you want to log, to keep the logfiles understandable.
In the Kernel Image and Kernel command line input lines, you can also select a special kernel image in case of problems or pass some parameters in to the kernel at startup time, to ensure reliable operation even of more exotic systems.
In Practice
In practical use on various Linux distributions, the three graphical front ends showed no compatibility issues with a team made up of KVM and QEMU. However, the working speed varied enormously: With Jqemu, significant effort was required to run the operating system at a reasonable speed on multiple Linux guest systems. The Java application was also the slowest to launch.
Aqemu impressed as the most complete candidate despite very extensive setting options: The program supports virtually all virtual systems without time-consuming manual work and does so without any noticeable loss of speed. Additionally, the GUI – which visually strongly resembles Oracle's VirtualBox – was the easiest to use.
Both Aqemu and VMM impressed with their efficient use of the host computer's resources: For example, we were able to simultaneously run multiple virtual machines with just 4GB RAM and 4 Core i5 processors in our lab without revealing any bottlenecks in terms of resource allocation.
Conclusions
As a dynamic duo, KVM and Qemu with a graphical front end offer various benefits in comparison with VirtualBox on the desktop, assuming that you choose the right front end. Aqemu offered the best performance on all tested Linux distributions and installing the virtual machine required very little input and clicking.
VMM is a viable alternative to Aqemu without any negatives. Jqemu plays to its strengths in heterogeneous environments, where admins want to launch the same interface on the virtual machine in spite of different host computers with different operating systems. But to achieve this, administrators have to plan for considerably more configuration overhead for each virtual system than with Aqemu and VMM.
Infos
- KVM: http://www.linux-kvm.org
- VirtualBox: https://www.virtualbox.org
- VMware Workstation: http://www.vmware.com/us/products/workstation.html
- oVirt: http://ovirt.org
- Proxmox VE: https://pve.proxmox.com
- GKVM: http://gkvm.sourceforge.net
- Qemulaunch: https://gna.org/projects/qemulaunch/
- QtEmu: https://qtemu.org
- Qemu Manager: https://sourceforge.net/projects/qemumanager/?source=directory
- Kimchi: https://kimchi-project.github.io/kimchi/downloads/
- VirtLive: https://sourceforge.net/projects/virtlive/
- Qemu: http://wiki.qemu.org
- Spice: https://www.spice-space.org
- Aqemu: https://sourceforge.net/projects/aqemu/
- Virtual Machine Manager: https://virt-manager.org
- Jqemu: https://sourceforge.net/projects/jqemu/
« Previous 1 2
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
![Learn More](https://www.linux-magazine.com/var/linux_magazin/storage/images/media/linux-magazine-eng-us/images/misc/learn-more/834592-1-eng-US/Learn-More_medium.png)
News
-
NVIDIA Released Driver for Upcoming NVIDIA 560 GPU for Linux
Not only has NVIDIA released the driver for its upcoming CPU series, it's the first release that defaults to using open-source GPU kernel modules.
-
OpenMandriva Lx 24.07 Released
If you’re into rolling release Linux distributions, OpenMandriva ROME has a new snapshot with a new kernel.
-
Kernel 6.10 Available for General Usage
Linus Torvalds has released the 6.10 kernel and it includes significant performance increases for Intel Core hybrid systems and more.
-
TUXEDO Computers Releases InfinityBook Pro 14 Gen9 Laptop
Sporting either AMD or Intel CPUs, the TUXEDO InfinityBook Pro 14 is an extremely compact, lightweight, sturdy powerhouse.
-
Google Extends Support for Linux Kernels Used for Android
Because the LTS Linux kernel releases are so important to Android, Google has decided to extend the support period beyond that offered by the kernel development team.
-
Linux Mint 22 Stable Delayed
If you're anxious about getting your hands on the stable release of Linux Mint 22, it looks as if you're going to have to wait a bit longer.
-
Nitrux 3.5.1 Available for Install
The latest version of the immutable, systemd-free distribution includes an updated kernel and NVIDIA driver.
-
Debian 12.6 Released with Plenty of Bug Fixes and Updates
The sixth update to Debian "Bookworm" is all about security mitigations and making adjustments for some "serious problems."
-
Canonical Offers 12-Year LTS for Open Source Docker Images
Canonical is expanding its LTS offering to reach beyond the DEB packages with a new distro-less Docker image.
-
Plasma Desktop 6.1 Released with Several Enhancements
If you're a fan of Plasma Desktop, you should be excited about this new point release.