GUESTFS-RELEASE-NOTES-1.18(1)

๐ŸŒธ guestfs-release-notes โ€” libguestfs Release Notes ๐Ÿ’…

okay bestie, welcome to the manual page guestfs-rel...-notes-1.18(1) from Virtualization Support โ€” yes, that's the whole manual name, it's giving "abbreviated by man because the terminal is narrow" energy. This is the release notes page and it is long, so strap in ๐ŸŽ€


โœจ NAME โœจ

guestfs-release-notes โ€” the libguestfs Release Notes. That's it. That's the name. Iconic brevity.


๐Ÿฆ‹ RELEASE NOTES FOR LIBGUESTFS 1.18 ๐Ÿฆ‹

okay so real talk โ€” these release notes only cover the differences from the previous stable/dev branch split (1.16.0). That's the scope, bestie, nothing more. For the detailed changelogs you gotta go look at the git repository, or the ChangeLog file that's distributed in the tarball. iykyk ๐Ÿ“š


๐Ÿ’– New features ๐Ÿ’–

๐ŸŒˆ virt tools

  • virt-sysprep has been rewritten and expanded (thanks Wanlong Gao) โ€” literally glow-up of the century โœจ http://libguestfs.org/virt-sysprep.1.html
  • virt-sparsify --zero is a new option that zeroes the named partition or filesystem ๐Ÿ”ฅ
  • virt-sparsify can now safely sparsify Linux swap partitions โ€” no cap, safely ๐Ÿ’€
  • virt-sparsify fixed so it cleans up after Ctrl+C โ€” the way it used to just leave a mess everywhere ๐Ÿ˜ญ http://libguestfs.org/virt-sparsify.1.html
  • a new tool libguestfs-make-fixed-appliance is provided to build fixed appliances that can be copied to other machines that don't have febootstrap support ๐Ÿ‘‘ http://libguestfs.org/libguestfs-make-fixed-appliance.1.html
  • virt-filesystems now displays the parents (containers) of MD devices and volume groups โ€” it finally knows where it came from ๐Ÿซถ
  • virt-alignment-scan, run with no args, displays alignment information for all libvirt domains โœจ
  • virt-df and virt-alignment-scan will display information from all guests even when a disk is inaccessible โ€” they do not give up, they are main character energy ๐Ÿ’…
  • virt-rescue new --scratch option to make scratch disks ๐ŸŽ€ https://rwmj.wordpress.com/2012/04/26/virt-rescue-scratch/#content
  • virt-make-fs can now be used to create btrfs ๐ŸŒธ
  • virt-edit preserves permissions, UID, GID and SELinux context when editing files โ€” respectful king behavior ๐Ÿ‘‘
  • guestfish passes the close event over stdout and remote correctly โœ…
  • guestfish new --pipe-error option lets you detect errors in pipe commands ๐Ÿ”
  • guestfish globs now expand device names ๐ŸŒ€
  • comma and colon characters in filenames now handled correctly by all virt tools โ€” big win for the chaotic file-namers among us ๐Ÿ“

๐Ÿงš inspection

  • added support for Fedora 17+ ๐Ÿ’œ
  • added support for FreeDOS ๐Ÿฆ‹
  • added support for Buildroot and Cirros โœจ
  • inspection is now compatible with Windows guests that have been sysprepped (thanks Grant Williamson). ๐ŸชŸ

โญ API

๐ŸŒธ examples

  • copy_over example showing how to copy between two handles ๐Ÿ“‹
  • display_icon program displays the icon associated with a guest ๐Ÿ–ผ๏ธ
  • mount_local.c example shows how to use the mount-local API ๐Ÿ’ซ

๐Ÿ”’ Security ๐Ÿ”’

(no security problems were found or fixed in this release) โ€” an absolute slay, nothing to report, everyone go home ๐ŸŽ‰

๐ŸŒŸ New APIs ๐ŸŒŸ

here's the whole list, bestie, every single one, in order, no skipping ๐Ÿ™

  • btrfs-device-add: Add devices to a btrfs filesystem.
  • btrfs-device-delete: Remove devices from a btrfs filesystem.
  • btrfs-filesystem-sync: Sync a btrfs filesystem.
  • btrfs-filesystem-balance: Balance a btrfs filesystem.
  • btrfs-fsck: Check btrfs filesystem.
  • btrfs-set-seeding: Enable or disable seeding.
  • btrfs-subvolume-create: Create a btrfs snapshot.
  • btrfs-subvolume-delete: Delete a btrfs snapshot.
  • btrfs-subvolume-list: List btrfs snapshots and subvolumes.
  • btrfs-subvolume-set-default: Set default btrfs subvolume.
  • btrfs-subvolume-snapshot: Create a writable btrfs snapshot.
  • get-e2attrs: List ext2 file attributes of a file.
  • get-e2generation: Get ext2 file generation of a file.
  • isoinfo, isoinfo-device: Get information from the header of ISO files.
  • llz: List files with SELinux information.
  • lvcreate-free: Create an LVM logical volume in % remaining free space.
  • md-stat: Return underlying devices from an MD device.
  • mkfs-brtfs: Make btrfs filesystem, with all tunables.
  • mount-local, mount-local-run, umount-local: FUSE support in the API.
  • ntfsclone-in, ntfsclone-out: Save, restore NTFS from backup.
  • ntfsfix: Fix common errors and force Windows to check NTFS.
  • set-e2attrs: Set or clear ext2 file attributes of a file.
  • set-e2generation: Set ext2 file generation of a file.
  • set-label: Unified interface for setting filesystem label.
  • vgmeta: Get volume group metadata.
  • wipefs: Wipe filesystem signatures from a device.
  • zero-free-space: Zero free space in a filesystem.

(yes mkfs-brtfs is spelled like that in here, i'm just copying what the page says, don't come for me ๐Ÿ’€)


๐Ÿ”ง Internals ๐Ÿ”ง

  • The debian/ subdirectory has been removed. We recommend you use the official Debian packages made by Hilko Bengen. ๐Ÿ™Œ http://people.debian.org/~bengen/libguestfs/ http://packages.debian.org/search?keywords=libguestfs
  • O_CLOEXEC / SOCK_CLOEXEC is now used for almost all file descriptors that the library opens. ๐Ÿ”
  • posix_fadvise is called when sequentially reading or writing large files. โšก
  • close all file descriptors and remove all signal handlers in the recovery process ๐Ÿงน
  • multiple gcc warnings and Coverity bugs have been fixed; many strict-overflow bugs have also been fixed ๐Ÿ›
  • use ./configure --enable-valgrind-daemon to use valgrind on the daemon; many errors have been fixed ๐Ÿ’œ
  • use ./configure --with-qemu-options to pass extra options to qemu ๐ŸŽ›๏ธ
  • the daemon now has a growable strings buffer type (DECLARE_STRINGSBUF) ๐Ÿ“ฆ
  • the <guestfs.h> header file works with C++ and we have a regression test for this โœ…
  • multiple APIs which should only be called in the CONFIG state now give an error if they are not โ€” boundaries, bestie ๐Ÿšง
  • .gitignore fixed to use absolute paths ๐Ÿ“
  • gobject bindings have been expanded, including mapping libguestfs events to gobject signals (thanks Matt Booth) ๐ŸŽ€
  • gobject documentation is generated properly (thanks Matt Booth) ๐Ÿ“–
  • gobject header files now live in a subdirectory ๐Ÿ—‚๏ธ
  • CompareWithString test in the generator now works โœ”๏ธ
  • FUInt32, FUInt64 struct field types now use the correct XDR type ๐Ÿงฎ
  • OCaml tests are now run on bytecode and native code. ๐Ÿซ
  • java -Xlint:all is used, and all warnings have been fixed โ˜•
  • bmptopng, wrestool (etc) missing or failure no longer prints warning messages ๐Ÿคซ
  • ruby: Use RbConfig instead of Config. ๐Ÿ’Ž
  • PYTHONPATH is set by the ./run script. ๐Ÿ
  • appliance building is now thread-safe. ๐Ÿงต
  • appliance now uses ip instead of ifconfig and netstat commands ๐ŸŒ
  • several fixes to make parallel builds work properly ๐Ÿ—๏ธ
  • guestfish --listen now cleans up properly ๐Ÿงผ
  • the BUSY state has been removed ๐Ÿšซ
  • gettextize has been removed, replaced by a simple Makefile.am ๐Ÿ—‘๏ธ
  • gettext support now covers virt-resize, virt-sparsify and virt-sysprep ๐ŸŒ
  • better support for the arm architecture ๐Ÿ’ช

๐Ÿ› Bugs fixed ๐Ÿ›

bestie. there are SO many. every single one, here we go ๐Ÿ˜ค

  • 822490 virt-ls error: "libguestfs: error: checksum: path: parameter cannot be NULL"
  • 816839 data overflow error when debug progress -1
  • 816098 virt-make-fs fails to make a btrfs filesystem because it doesn't allocate enough space
  • 811872 inspection fails on ubuntu 10.04 guest with encrypted swap
  • 811650 guestfs_last_error not set when qemu fails early during launch
  • 811649 libguestfs cannot open disk images which are symlinks to files that contain ':' (colon) character
  • 811117 [RFE][virt-sysprep] net-hwaddr not removed from "ifcfg-*" files on rhel
  • 811112 [RFE][virt-sysprep] hostname can not be changed on rhel system
  • 809361 inspection doesn't recognize Fedora 18 (grub2 + GPT)
  • 807905 mkfs blocksize option breaks when creating btrfs
  • 805070 virt-filesystems should show 'parents' of LV and RAID devices
  • 804464 libguestfs cannot be built when LINGUAS is different then ja or uk
  • 803664 libguestfs inspection fails on Windows XP: libguestfs: error: hivex: could not locate HKLM\SYSTEM\MountedDevices
  • 803533 guestfish: write error
  • 802389 event handlers for 'close' event doesn't work in remote mode
  • 802109 libguestfs uses putc on stderr, results in many individual 1 byte writes of debug messages
  • 801640 [RFE] the error reported by resize2fs-M need to be more clear
  • 801298 Possible null dereference and resource leaks
  • 801273 Document for set-pgroup need to be updated
  • 798196 virt-resize confuses format and output_format variables; using --output-format sets the input format ๐Ÿ˜ญ
  • 797986 virt-resize on Windows XP in sysprep state causes "UNMOUNTABLE_BOOT_VOLUME" BSOD ๐Ÿ’€
  • 796520 [RFE] Prevent user from running some appliance configure commands after appliance boot up
  • 790721 multiprovider build error: RuntimeError: link: /tmp/.guestfs-0/kernel /tmp/.guestfs-0/kernel.10139: File exists
  • 789960 guestfsd crash when try to mount non-exist disk
  • 789504 virt-df (other tools?) should not give up if a guest disk is missing
  • 788641 virt-edit doesn't preserve file permissions
  • 786215 libguestfs inspection does not recognize FreeDOS operating system
  • 786188 libguestfs inspection does not recognize FreeDOS install CD
  • 785668 aug-defnode: daemon crash
  • 784647 Libguestfs uses deprecated net-tools
  • 769304 virt-resize on RHEL 6 kernel fails to re-read the partition table
  • 755729 Error message for resize2fs-M needs tweaking
  • 701814 virt-win-reg fails on a libvirt guest that has no defined disk format: "format parameter is empty or contains disallowed characters"
  • 679737 libguestfs: improve error message when zerofree is not available in the appliance
  • 635971 glob mkfs ext2 /dev/vd[b-t]1 does not expand

๐Ÿ‘€ SEE ALSO ๐Ÿ‘€

guestfs-examples(1), guestfs-faq(1), guestfs-performance(1), guestfs-recipes(1), guestfs-testing(1), guestfs(3), guestfish(1), http://libguestfs.org/


โœ๏ธ AUTHOR โœ๏ธ

Richard W.M. Jones ๐Ÿ‘‘


Copyright (C) 2009-2025 Red Hat Inc.


๐Ÿ“œ LICENSE ๐Ÿ“œ

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

๐Ÿ› BUGS ๐Ÿ›

okay so bestie, if you find a bug (and you will, it's software, it's giving chaos goblin energy ๐Ÿ’€), here's the whole vibe for reporting it, no cap:

  • ๐Ÿฉน Wanna see all the bugs already filed against libguestfs? Go here:
https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
  • โœจ Wanna report a brand-new bug against libguestfs? This is your link:
https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools

๐ŸŒธ when you're reporting a bug, please supply ๐ŸŒธ

like, actually supply these, this is the whole reason your bug report slays instead of flopping ๐Ÿ™ˆ

  • ๐Ÿ“Œ The version of libguestfs.
  • ๐Ÿ“Œ Where you got libguestfs (eg. which Linux distro, compiled from source, etc)
  • ๐Ÿ“Œ Describe the bug accurately and give a way to reproduce it.
  • ๐Ÿ“Œ Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug report.
lowkey the "complete, unedited" part is not a suggestion, bestie โ€” do NOT trim it, do NOT paraphrase it, paste the whole thing ๐Ÿ’…

and that's the whole page, you made it to the end, iconic behavior fr fr ๐Ÿ’–๐Ÿฆ‹๐ŸŽ€

Source libguestfs-1.61.3, dated 2026-09-16, and the page tag is guestfs-rel...-notes-1.18(1) โ€” that's the whole footer vibe, so go forth and file immaculate bug reports, mwah ๐Ÿ’‹โœจ

๐Ÿ“ฆ where this page comes from