KVM acceleration after removing qemu-kvm package
In order to have KVM acceleration after the removal of qemu-kvm I had to edit the config of my virtual machines like this:
<domain type='qemu' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> ... <qemu:commandline> <qemu:arg value='-machine'/> <qemu:arg value='accel=kvm'/> <qemu:arg value='kernel_irqchip=on' /> </qemu:commandline> </domain>
I don't know if there is some specific field in libvirt XML, but this works for me.
Added chip level IRQs to the argument list of Vimes656 recommendation.
About the disput of using or not the kvm group, the discussion which lead to adding this group in the depreceated group list is there; deleted from the talk page of KVM article. Bricewge (talk) 16:26, 18 September 2014 (UTC)
Errors and possible fixes
If you get the following error(s) when creating a new virtual machine using virt-manager:
summary=Error launching details: 'Terminal' object has no attribute 'set_visible_bell' details=Error launching details: 'Terminal' object has no attribute 'set_visible_bell'
sudo pacman -S vte290
and change the following line in /usr/share/virt-manager/virtManager/serialcon.py
from gi.repository import Vte
#from gi.repository import Vte import gi gi.require_version('Vte', '2.90') from gi.repository import Vte
to explicitely use a vte 290 terminal
Trouble shooting when configuring network
After following the instructions configuring a libvirt environment, if one provides the argument
--network bridge=xxx to
virt-install, then an error may occur:
ERROR internal error: /usr/lib/qemu/qemu-bridge-helper --br=xxx --fd=xx: \
failed to communicate with bridge helper: Transport endpoint is not connected
stderr=failed to parse default acl file `/etc/qemu/bridge.conf'
I would like to add a note section which describes the solution to this error, which is to create a file
/etc/qemu/bridge.conf with proper settings.
At Libvirt#Create_a_new_domain_using_virt-install Tips. I have a kvm+qrmu+libvirt+virt-manager fresh install, but I can't find that file. I tried pacman -Ql libosinfo, and pkgfile, but didn't help. Is there something wrong? Or that file has been removed? Should to be removed？
- This seems to be a valid concern. Both
pacman -Ql libosinfoand
pacman -Fs libosinfofail to yield any results for me.
- Ichimonji10 (talk) 02:41, 21 October 2019 (UTC)
The article says to install bridge-utils but according to https://wiki.linuxfoundation.org/networking/bridge (via https://www.kernel.org/doc/html/latest/networking/bridge.html)
"Note: the bridge-utils package is deprecated, instead use the bridge command from iproute2 package."
"Set up authentication." section. I feel like it should be re arranged.
The fastest and the simplest way is to add yourself to
However, right now the description of this method is buried somewhere in the middle. I feel like that should be at the top.
As of libvirt 1.2.16
That's 5 years ago. Is the version relevant?
Therefore there is no need to create a new group and rule file if your user is a member of the wheel group: upon connection to the RW socket (e.g. via virt-manager) you will be prompted for your user's password.
wheel group did not work for me. Maybe it works if there is a GUI. (I used it over ssh)
ensure the libvirt group exists
It should be ensured while installing the package.
As an example, to authorize the kvm group, create the following file:
Would there be any conflicts because kvm is a real group used to give access to /dev/kvm. Maybe use some fictional group for the example.
Added the changes
A common use case for virtual machines is using other OSes, and Windows 11 requires a TPM, so it seems useful to mention TPM emulation here. The best reference I found for that is here, but I have no clue if itʼs actually good. This doesnʼt get you all the way to installing Windows; you also need to run
REG ADD HKLM\SYSTEM\Setup\LabConfig /v BypassSecureBootCheck /t REG_DWORD /d 1 in the install environment. --DHouck (talk) 00:11, 16 February 2022 (UTC)
The default method shown as example on https://libvirt.org/kbase/virtiofs.html is memfd/shared, and you don't need the extra configuration step to set up huge_pages solsTiCe (talk) 15:51, 3 August 2022 (UTC)