FREEDOM251

Freedom251 › Virtual Drive Software

libguestfs

Free plan Open source APILinuxMacSelf-hostedWindows

Visit libguestfs Alternatives Pricing

libguestfs's own site

What libguestfs is

libguestfs is a free library and toolset for viewing and changing virtual machine disk images. It can edit guest files, script VM changes, create or resize images, make backups, clone VMs, and build them. The project says it can access almost any disk image, including those from VMware and Hyper-V, and work with images created by VMware, KVM, qemu, VirtualBox, Xen, and other hypervisors without requiring libvirt. Its image formats include raw, qcow2, vmdk, vdi, vpc, and vhd. Command-line users can work with guestfish, a scriptable shell, or virt-rescue, 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 tools have been ported to Windows.

Who it suits

libguestfs suits developers and administrators who need to inspect or modify VM disk images, automate guest changes, or build and clone VMs. Its shell tools and language bindings support both command-line and programmatic workflows.

What it does well

  • Free, open-source library and tools.
  • Works with images from multiple hypervisors.
  • Guestfish offers a scriptable shell.
  • C bindings have examples in many languages.
  • Usually accesses guest files as a non-root user.

What to know first

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

Limits

The project says non-Linux systems require compiling from source and porting libguestfs. Some virt tools have been ported to Windows.

Plans

PlanBilled and limitsPrice
libguestfsOpen source library and tools · source and binary downloadsFree
libguestfs open-source softwareLGPLv2+ library · GPLv2+ programs · examples under permissive licenceFree

As libguestfs.org lists them, read 29 Sept 2026. The maker's own page has the final word.

Getting started

  1. Visit https://libguestfs.org/ for the project and download options.
  2. Choose a source download or an installation command for Fedora, Red Hat Enterprise Linux, Debian, or Ubuntu.
  3. On Linux, install the package for your distribution or build from source.
  4. On non-Linux systems, compile from source and port libguestfs.

Overview

libguestfs is a library and toolset for working with virtual-machine disk images, rather than a general-purpose virtual-drive utility. It is best suited to developers and system administrators who need to inspect, change or automate guest images; its breadth is compelling, but non-Linux use can mean compiling and porting the software.

Key features

libguestfs handles guest-file inspection and editing, scripted VM changes, image creation and resizing, backups, cloning and VM builds. It supports raw, qcow2, vmdk, vdi, vpc and vhd images, including disks made by VMware, KVM, qemu, VirtualBox and Xen. That range is useful for mixed-hypervisor workflows, and libvirt is not a prerequisite.

For command-line work, guestfish provides a scriptable shell and virt-rescue an interactive rescue shell. Developers can integrate the C library or use bindings and examples for C/C++, Erlang, Go, Java, Lua, OCaml, Perl, Python and Ruby. These interfaces make it a strong fit for repeatable operations and software integration; readers seeking a graphical, point-and-click workflow should look elsewhere.

Guest filesystems are accessed through a Linux kernel in a qemu virtual machine, usually running as a non-root user. With the libvirt backend, sVirt and SELinux can also be used. This is a useful isolation model for image work, though those additional protections depend on the backend and host setup.

Pricing

libguestfs is free: its free plan includes the open-source library and tools, with source and binary downloads. There is no free trial because the software is offered as a free plan. The project provides installation commands for Fedora, Red Hat Enterprise Linux, Debian and Ubuntu, alongside source downloads.

Platforms

Linux is the clearest fit: libguestfs runs on many Linux distributions. It also runs on Mac OS X, while some virt tools have been ported to Windows. Non-Linux systems may require compiling from source and porting libguestfs, so Windows or Mac users should allow for that extra work rather than assume a turnkey installation. It supports virtual disk files and optical image mounting.

Who it's for

Choose libguestfs if you need programmatic access to guest filesystems, command-line image maintenance, or automation across virtual-machine formats. Its library, language bindings and rescue shell serve developers and administrators with technical workflows. It is a weaker fit for users who want a conventional desktop mounting interface or an installation that needs no porting outside Linux.

Pros and cons

  • Pros: Broad image-format and hypervisor compatibility makes it practical for varied VM environments.
  • Pros: Scriptable, interactive and library interfaces support both operations work and integration.
  • Pros: Guest access runs through a qemu virtual machine, usually as a non-root user, with optional sVirt and SELinux through libvirt.
  • Cons: Non-Linux systems can require source compilation and porting, adding setup effort.
  • Cons: Its shell and developer interfaces favor technical users over people looking for a graphical image-mounting tool.

Alternatives

For a wider range of virtual-drive options, browse Virtual Drive Software. Choose Arsenal Image Mounter if you want disk-image mounting with temporary write support, BitLocker tools, and CLI and PowerShell access; its free mode is available, with a 1 Year Plan at $907 a year. Choose ExpanDrive for cloud services and protocols across Linux, macOS and Windows, rather than libguestfs's VM-image focus. OSFClone is a free self-booting disk-imaging utility for Linux and Windows. RaiDrive offers a free Standard plan and an Education 2024 plan for accredited educational institutions. Alcohol 52% is a Windows option with a 15-day trial and a free edition. CDEmu is a free Linux optical-drive and disc emulator. DAEMON Tools Lite provides basic imaging functionality on Windows, with partner offers and limited support on its free plan. gBurner Virtual Drive is a free Windows utility supporting up to 16 virtual drives.

Verdict

Choose libguestfs for technical VM-image work when you value broad format support, automation interfaces and a free, open-source toolkit. Its main reason to look elsewhere is the setup burden outside Linux—or the absence of a graphical workflow for users who want straightforward desktop mounting.

Verdict

libguestfs offers a broad set of disk-image tasks, shell tools, and developer interfaces at no cost. Non-Linux users should note the possible need to compile and port it.

Questions

Is libguestfs free?

Yes. The listed plan is free, and the project offers an open-source library and tools.

Which virtual disk formats are listed?

The listed formats are raw, qcow2, vmdk, vdi, vpc, and vhd.

Does libguestfs require libvirt?

No. The FAQ says libvirt is not required.

Which systems does it support?

It runs on many Linux distributions and Mac OS X. Some virt tools have been ported to Windows.

How can I get help?

Users can ask on the libguestfs mailing list or the #guestfs IRC channel on Libera Chat. Red Hat Enterprise Linux customers are directed to Red Hat Support.

Facts from libguestfs's own pages

API scope
The API has more than one hundred low-level filesystem access and modification calls. · libguestfs.org, 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, 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, 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, 15 Oct 2026
Command line
The functionality is available through guestfish, a scriptable shell, and virt-rescue, an interactive rescue shell. · libguestfs.org, 29 Sept 2026
Debian architectures
The Debian package page offers builds for amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el and s390x. · packages.debian.org, 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, 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, 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, 29 Sept 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, 29 Sept 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, 15 Oct 2026
Downloads
The project provides source downloads and lists installation commands for Fedora, Red Hat Enterprise Linux, Debian, and Ubuntu. · libguestfs.org, 29 Sept 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, 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, 15 Oct 2026
Founded
2009 · libguestfs.org, 28 Sept 2026
FUSE availability limitation
Local mounting requires FUSE and libfuse support at build time, and may fail with ENOTSUP when unavailable. · manpages.ubuntu.com, 15 Oct 2026
FUSE mounting
The FUSE module can mount guest filesystems on the host. · libguestfs.org, 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, 15 Oct 2026
Guestfish
guestfish is the scriptable shell interface to the libguestfs API. · libguestfs.org, 15 Oct 2026
Image access
The homepage says libguestfs can access almost any disk image, including proprietary VMware and Hyper-V images. · libguestfs.org, 15 Oct 2026
Image compatibility
The project says it can access almost any disk image, including images from VMware and Hyper-V. · libguestfs.org, 29 Sept 2026
Integration
The FAQ says libvirt is not required and libguestfs works with disk images created by VMware, KVM, qemu, VirtualBox, Xen, and other hypervisors. · libguestfs.org, 29 Sept 2026
Language support
The project describes a C library linkable from C and C++ and bindings for about a dozen other languages. · libguestfs.org, 15 Oct 2026
Limit
The FAQ says non-Linux systems require compiling from source and porting libguestfs. · libguestfs.org, 29 Sept 2026

Where libguestfs stands on Freedom251

Look at these too