libvirt Wiki

This is the libvirt Wiki for user contributed content.

To edit the pages either use the gitlab integrated editor (e.g. by following the 'Edit this page' link in the footer of pages) or clone the repository and then submit a merge request with your changes. Note that contributions to the wiki are licensed under LGPLv2+.

Note that for linking within this wiki the link in the .rst file must use .html suffix instead to link to the proper output file.


  • Chirammal, Mukhedkar, et al., "Mastering KVM Virtualization", 2016, PACKT Publishing, [1]

Guest Management

Guest Management Concepts

  • Guest (VM) Lifecycle : Read This First - Introduces the concepts used with guests / virtual machines. Includes things like persistent vs transient domains, creating, starting, stopping domains, saving, restoring, snapshots, and secure wiping of disk images.


Networking Concepts

  • Virtual Networking : Read This First - Introduces the concepts and ideas used in libvirts' networking for guests

Detailed networking pieces



The images in this wiki, along with their Inkscape SVG source, are on this page in one place in case you'd like to use or modify them for your own project:


In case you want to turn on debuging in libvirt follow:

For other (partially automated) debugging techniques, check

Getting started with libvirt development

Here is the list of small tasks that should enable you to start digging into libvirt source code base

Google Summer of Code

There is a separate page dedicated to Google Summer of Code 2024.

Also, the list for future ideas for projects can be found here Google Summer of Code Ideas.

The previous years can be found here: 2023, 2022, 2021, 2020, 2019, 2018, 2017 and 2016.

There is also a separate page for FAQ.