×


No guest machines present libvirtd - Fix it now

Are you facing the error 'No guest machines present libvirtd'?

This guide will help you.


Recently one of our customers came to us stating that the libvirt daemon is successfully started, but no guest virtual machines appear to be present.

Here a Ibmi Media, as part of our Server Management Services, we regularly help our Customers to handle similar Linux Server errors. 

In this context, we shall look into how to troubleshoot this error and fix it for our customers.


How to troubleshoot and fix 'No guest machines present libvirtd' ?

Start by executing the virsh command to check this:

# virsh list --all
Id Name State

Now follow the steps given below to troubleshoot this error.

Different reasons triggers this error, so you should also find out why it occurs.


1. Firstly, we can verify KVM kernel modules


2. After that we can verify that KVM kernel modules are inserted in the kernel:

We can use the following command for this:

# lsmod | grep kvm

In case if we are using an AMD machine we can use the following command to check this:

# lsmod | grep kvm_amd

If the modules are not present, insert them using the following command:

$ modprobe <modulename>


3. Next, we can verify whether the virtualization extensions are supported and enabled on the host using the following command:

# egrep "(vmx|svm)" /proc/cpuinfo
flags : fpu vme de pse tsc ... svm ... skinit wdt npt lbrv svm_lock nrip_save
flags : fpu vme de pse tsc ... svm ... skinit wdt npt lbrv svm_lock nrip_save

We need to enable virtualization extensions in hardware firmware configuration within the BIOS setup.


4. Finally verifying that the URI of the client is configured as intended.

We can do this with the following command:

# virsh uri
vbox:///system

For example, this message shows the URI is connected to the VirtualBox hypervisor, not QEMU, and reveals a configuration error for a URI that is otherwise set to connect to a QEMU hypervisor. If the URI was correctly connecting to QEMU, the same message would appear instead as:

# virsh uri qemu:///system

This situation occurs when there are other hypervisors present, which libvirt may speak to by default.


We can fix 'No guest machines present libvirtd' by following the above steps.

Once we complete the above steps of troubleshooting, we can use the following command to view a list of guest virtual machines:

# virsh list --all

[Need urgent assistance in fixing Ubuntu errors? – We are available 24*7. ]


Conclusion

This article covers how to troubleshoot and fix No guest machines present libvirtd for our customers. 

The virsh program is the main interface for managing virsh guest domains. The program can be used to create, pause, and shutdown domains. 

It can also be used to list current domains. Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes).

The libvirt daemon is successfully started, but no guest virtual machines appear to be present.


There are various possible causes of this problem.

Performing these tests will help to determine the cause of this situation:

1. Verify KVM kernel modules

Verify that KVM kernel modules are inserted in the kernel:

$ lsmod | grep kvm

If you are using an AMD machine, verify the kvm_amd kernel modules are inserted in the kernel instead, using the similar command lsmod | grep kvm_amd in the root shell.

If the modules are not present, insert them using the modprobe <modulename> command.

Note: Although it is uncommon, KVM virtualization support may be compiled into the kernel. In this case, modules are not needed.

2. Verify virtualization extensions

Verify that virtualization extensions are supported and enabled on the host:

# egrep "(vmx|svm)" /proc/cpuinfo

Enable virtualization extensions in your hardware's firmware configuration within the BIOS setup.

3. Verify client URI configuration

Verify that the URI of the client is configured as desired:

# virsh uri


How to fix No guest machines present #libvirtd #error:

After performing these tests, use the following command to view a list of guest virtual machines:

# virsh list --all