Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Virtual Drive Software
  3. libguestfs

libguestfs

What it is

libguestfs is a free library and toolset for accessing and modifying virtual machine disk images. It can view or edit guest files, script VM changes, create or resize images, perform backups, clone VMs, and build VMs. The project says it can access almost any disk image, including VMware and Hyper-V images, and supports images from VMware, KVM, qemu, VirtualBox, Xen, and other hypervisors without requiring libvirt. For command-line work, guestfish is a scriptable shell and virt-rescue is an interactive rescue shell. The C library has bindings for many programming languages, with examples for C/C++, Erlang, Go, Java, Lua, OCaml, Perl, Python, and Ruby. Guest filesystems are accessed through a Linux kernel in a qemu virtual machine, usually as a non-root user; sVirt with libvirt and SELinux can also be used. It runs on many Linux distributions and Mac OS X, while some virt tools have been ported to Windows. Non-Linux systems may require compiling from source and porting.

For and against

For

  • Works with images from multiple hypervisors.
  • Can create, resize, clone, and back up VM images.
  • Includes scriptable and interactive command-line shells.
  • C library has bindings for many languages.
  • Free open-source library and tools.

Against

  • Non-Linux systems may require source compilation and porting.
  • Only some virt tools have been ported to Windows.

The verdict

libguestfs covers a broad set of virtual disk tasks through its library and command-line tools. Linux is its principal environment; non-Linux users may need to compile and port it.

Who it suits

It suits administrators and developers who need to inspect, change, or build virtual machine disk images. Programming-language bindings and command-line shells support both application and shell-based workflows.

Plans and prices

libguestfs open-source software

Free

LGPLv2+ library · GPLv2+ programs · examples under permissive licence

libguestfs

Free

Open source library and tools · source and binary downloads

Every plan, in full

On the record

API scope
The API has more than one hundred low-level filesystem access and modification calls.libguestfs.org · read 15 Oct 2026
Architecture
libguestfs launches a small QEMU appliance containing a Linux kernel, userspace tools and guestfsd, communicating with the host library over RPC.libguestfs.org · read 15 Oct 2026
Build requirements
Building from source requires QEMU at least 7.2.0, qemu-img at least 7.2.0, a kernel at least 2.6.34, supermin at least 5.1.18, a C compiler, Perl and OCaml at least 4.08.libguestfs.org · read 15 Oct 2026
Command execution limitation
Commands run inside guests have limited memory, may lack networking, work only with Linux guests and are unsafe for untrusted or malicious guests.manpages.ubuntu.com · read 15 Oct 2026
Command line
The functionality is available through guestfish, a scriptable shell, and virt-rescue, an interactive rescue shell.libguestfs.org · read 29 Sep 2026
Debian architectures
The Debian package page offers builds for amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el and s390x.packages.debian.org · read 15 Oct 2026
Debian-described capabilities
Debian describes batch guest configuration, file editing, disk statistics, virtualization migration, partial backups, cloning and registry, UUID and hostname changes.packages.debian.org · read 15 Oct 2026
Debian package availability
Debian bookworm provides libguestfs0 version 1:1.48.6-2 and separate packages for tools, rescue support and language bindings.packages.debian.org · read 15 Oct 2026
Developer interfaces
libguestfs is a C library with bindings for many programming languages, and the site provides examples for C/C++, Erlang, Go, Java, Lua, OCaml, Perl, Python, and Ruby.libguestfs.org · read 29 Sep 2026
Disk image tasks
It can view and edit guest files, script VM changes, create and resize images, perform backups, clone VMs, and build VMs.libguestfs.org · read 29 Sep 2026
Documentation depth
The homepage advertises a roughly 250-page manual, and the documentation set includes API, FAQ, recipes, performance, building, hacking, internals, testing and security manuals.libguestfs.org · read 15 Oct 2026
Downloads
The project provides source downloads and lists installation commands for Fedora, Red Hat Enterprise Linux, Debian, and Ubuntu.libguestfs.org · read 29 Sep 2026
Filesystem coverage
Debian lists support through Linux and QEMU for ext2/3/4, btrfs, FAT, NTFS, LVM, multiple partition schemes, qcow/qcow2 and VMDK.packages.debian.org · read 15 Oct 2026
File transfer
guestfs_download and guestfs_upload support files without content or size limits, while tar-based calls transfer multiple files.libguestfs.org · read 15 Oct 2026
FUSE availability limitation
Local mounting requires FUSE and libfuse support at build time, and may fail with ENOTSUP when unavailable.manpages.ubuntu.com · read 15 Oct 2026
FUSE mounting
The FUSE module can mount guest filesystems on the host.libguestfs.org · read 15 Oct 2026
FUSE performance limitation
The API manual says local FUSE mounting performs poorly and recommends ordinary libguestfs calls or streaming transfers for better performance.manpages.ubuntu.com · read 15 Oct 2026
Guestfish
guestfish is the scriptable shell interface to the libguestfs API.libguestfs.org · read 15 Oct 2026

Alternatives to libguestfs

Every alternative, ranked