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-sysprephas been rewritten and expanded (thanks Wanlong Gao) โ literally glow-up of the century โจhttp://libguestfs.org/virt-sysprep.1.htmlvirt-sparsify --zerois a new option that zeroes the named partition or filesystem ๐ฅvirt-sparsifycan now safely sparsify Linux swap partitions โ no cap, safely ๐virt-sparsifyfixed 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-applianceis provided to build fixed appliances that can be copied to other machines that don't havefebootstrapsupport ๐http://libguestfs.org/libguestfs-make-fixed-appliance.1.html virt-filesystemsnow 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-dfandvirt-alignment-scanwill display information from all guests even when a disk is inaccessible โ they do not give up, they are main character energy ๐virt-rescuenew--scratchoption to make scratch disks ๐https://rwmj.wordpress.com/2012/04/26/virt-rescue-scratch/#contentvirt-make-fscan now be used to create btrfs ๐ธvirt-editpreserves permissions, UID, GID and SELinux context when editing files โ respectful king behavior ๐guestfishpasses the close event over stdout and remote correctly โguestfishnew--pipe-erroroption lets you detect errors in pipe commands ๐guestfishglobs 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
- broad support for btrfs added, including adding multiple devices, fsck, snapshots (thanks Wanlong Gao) ๐ณ
- the new
mount-localAPI brings FUSE support directly into the core libguestfs API ๐ฅhttps://rwmj.wordpress.com/2012/05/14/tip-using-mount-local-api-from-c/#content - new man page:
guestfs-performance(1), which contains performance tuning tips โกhttp://libguestfs.org/guestfs-performance.1.html - new man page:
guestfs-faq(1), Frequently Asked Questions ๐http://libguestfs.org/guestfs-faq.1.html ENOTSUP(fromguestfs_last_errno) is now returned for APIs that are not supported โ it's honest about its limits, we love a self-aware API ๐
๐ธ examples
copy_overexample showing how to copy between two handles ๐display_iconprogram displays the icon associated with a guest ๐ผ๏ธmount_local.cexample shows how to use themount-localAPI ๐ซ
๐ 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_CLOEXECis now used for almost all file descriptors that the library opens. ๐posix_fadviseis 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-daemonto use valgrind on the daemon; many errors have been fixed ๐ - use
./configure --with-qemu-optionsto 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 ๐ง
.gitignorefixed 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 ๐๏ธ
CompareWithStringtest in the generator now works โ๏ธFUInt32,FUInt64struct field types now use the correct XDR type ๐งฎ- OCaml tests are now run on bytecode and native code. ๐ซ
java -Xlint:allis used, and all warnings have been fixed โbmptopng,wrestool(etc) missing or failure no longer prints warning messages ๐คซ- ruby: Use
RbConfiginstead ofConfig. ๐ PYTHONPATHis set by the./runscript. ๐- appliance building is now thread-safe. ๐งต
- appliance now uses
ipinstead ofifconfigandnetstatcommands ๐ - several fixes to make parallel builds work properly ๐๏ธ
guestfish --listennow cleans up properly ๐งผ- the BUSY state has been removed ๐ซ
gettextizehas been removed, replaced by a simpleMakefile.am๐๏ธ- gettext support now covers
virt-resize,virt-sparsifyandvirt-sysprep๐ - better support for the arm architecture ๐ช
๐ Bugs fixed ๐
bestie. there are SO many. every single one, here we go ๐ค
822490virt-ls error:"libguestfs: error: checksum: path: parameter cannot be NULL"816839data overflow error when debug progress-1816098virt-make-fs fails to make a btrfs filesystem because it doesn't allocate enough space811872inspection fails on ubuntu 10.04 guest with encrypted swap811650guestfs_last_errornot set when qemu fails early during launch811649libguestfs cannot open disk images which are symlinks to files that contain':'(colon) character811117[RFE][virt-sysprep] net-hwaddr not removed from"ifcfg-*"files on rhel811112[RFE][virt-sysprep] hostname can not be changed on rhel system809361inspection doesn't recognize Fedora 18 (grub2 + GPT)807905mkfsblocksize option breaks when creating btrfs805070virt-filesystems should show 'parents' of LV and RAID devices804464libguestfs cannot be built whenLINGUASis different then ja or uk803664libguestfs inspection fails on Windows XP:libguestfs: error: hivex: could not locate HKLM\SYSTEM\MountedDevices803533guestfish: write error802389event handlers for 'close' event doesn't work in remote mode802109libguestfs usesputcon stderr, results in many individual 1 byte writes of debug messages801640[RFE] the error reported byresize2fs-Mneed to be more clear801298Possible null dereference and resource leaks801273Document forset-pgroupneed to be updated798196virt-resize confusesformatandoutput_formatvariables; using--output-formatsets the input format ๐ญ797986virt-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 up790721multiprovider build error:RuntimeError: link: /tmp/.guestfs-0/kernel /tmp/.guestfs-0/kernel.10139: File exists789960guestfsd crash when try to mount non-exist disk789504virt-df (other tools?) should not give up if a guest disk is missing788641virt-edit doesn't preserve file permissions786215libguestfs inspection does not recognize FreeDOS operating system786188libguestfs inspection does not recognize FreeDOS install CD785668aug-defnode: daemon crash784647Libguestfs uses deprecated net-tools769304virt-resize on RHEL 6 kernel fails to re-read the partition table755729Error message forresize2fs-Mneeds tweaking701814virt-win-reg fails on a libvirt guest that has no defined disk format:"format parameter is empty or contains disallowed characters"679737libguestfs: improve error message whenzerofreeis not available in the appliance635971globmkfs ext2 /dev/vd[b-t]1does 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 ยฉ๏ธ
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
- centos-stream 10: libguestfs 1:1.61.3-1.el10 ยท LGPL-2.1-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms