.\" Automatically generated by Podwrapper::Man 1.50.1 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "guestfs-release-notes-1.40 1" .TH guestfs-release-notes-1.40 1 "2023-02-21" "libguestfs-1.50.1" "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" guestfs\-release\-notes \- libguestfs Release Notes .SH "RELEASE NOTES FOR LIBGUESTFS 1.40" .IX Header "RELEASE NOTES FOR LIBGUESTFS 1.40" These release notes only cover the differences from the previous stable/dev branch split (1.38.0). For detailed changelogs, please see the git repository, or the ChangeLog file distributed in the tarball. .SS "New features" .IX Subsection "New features" \fINew features in existing tools\fR .IX Subsection "New features in existing tools" .PP Virt-inspector now displays the libosinfo short \s-1ID\s0 for guests (Pino Toscano). .PP Guestfish \fI\-N\fR will now generate 1G disks instead of 100M disks by default. .PP Virt-resize supports f2fs filesystems (Pino Toscano). .PP libguestfs-test-tool now supports bash tab completion (Pino Toscano). .PP The \fI\-\-machine\-readable\fR option now supports sending output to files or stdout/stderr. This works uniformly across most OCaml-based virt tools, specifically: virt-builder, virt-builder-repository, virt-dib, virt-get-kernel, virt-resize, virt-sparsify, and virt\-v2v (Pino Toscano). .PP Virt-builder \fI\-\-uninstall\fR option now works on \s-1SUSE\s0 (Sebastian Meyer). .PP Virt-builder now supports Windows. We are not able to ship Windows templates in the public repository for obvious licensing reasons, but if you are an \s-1MSDN\s0 subscriber you may build your own. See https://rwmj.wordpress.com/2018/09/13/creating\-windows\-templates\-for\-virt\-builder/ .PP Many tools now support a \fI\-\-key\fR option allowing you to pass in decryption keys for filesystems stored in local files on the host rather than having to feed them in over stdin (Pino Toscano). .PP \fIvirt\-v2v and virt\-p2v\fR .IX Subsection "virt-v2v and virt-p2v" .PP New \fI\-o rhv-upload\fR mode for directly uploading images to \s-1RHV,\s0 bypassing the Export Storage Domain (Tomáš Golembiovský, Nir Soffer, Daniel Erez, Pino Toscano). .PP New \fI\-o openstack\fR mode for directly uploading images to OpenStack and Cinder using OpenStack APIs. .PP Virt\-v2v now has a general mechanism for input and output options: \&\fI\-io\fR and \fI\-oo\fR. .PP Virt\-v2v can now install the \s-1RHV\s0 tools or \s-1QEMU GA\s0 in guests (Tomáš Golembiovský). .PP The huge manual has now been split into several smaller documents and is more focused on helping users to accomplish specific v2v tasks. .PP Multiple improvements to the \s-1OVF\s0 metadata when converting to \s-1RHV\s0 (Tomáš Golembiovský, Pino Toscano, Arik Hadas). .PP Virt\-v2v can now convert Linux guests with split kernel packages, especially Ubuntu 18.04 (Pino Toscano). .PP Virt\-v2v old \fI\-\-password\-file\fR option has been replaced by \fI\-ip\fR (the old option remains for backwards compatibility). .PP Virt\-v2v now preserves the \s-1VM\s0 Generation \s-1ID.\s0 .PP Virt\-v2v has a new \fI\-\-mac\fR option allowing specific NICs to be mapped precisely to networks or bridges on the target. .PP New virt\-v2v \fI\-\-print\-estimate\fR option to estimate the size of data that virt\-v2v will copy. .PP Virt\-v2v is now usually able to remove open-vm-tools and VMware Tools from the Linux guest during conversion (Pino Toscano). .PP Virt\-v2v can now support \s-1UEFI\s0 conversions to \s-1RHV\s0 (Tomáš Golembiovský). .PP Virt\-p2v now prefers you to shut down instead of rebooting the machine after conversion has finished (Pino Toscano). .PP Virt\-v2v now writes the libosinfo short \s-1ID\s0 to the libvirt metadata when using \fI\-o local\fR and \fI\-o libvirt\fR output modes (Martin Kletzander). .PP \fILanguage bindings\fR .IX Subsection "Language bindings" .PP OpenJDK 10+ is supported (Pino Toscano). .PP Java bindings fixed for Gentoo host (Martin Kletzander). .PP \fIInspection\fR .IX Subsection "Inspection" .PP Support Kali Linux (Pino Toscano). .PP When inspecting mountpoints, look for \fI/etc/mdadm/mdadm.conf\fR as well as \fI/etc/mdadm.conf\fR (Nikolay Ivanets). .PP Improved support for OpenSUSE Tumbleweed (Pino Toscano). .PP \fIArchitectures and platforms\fR .IX Subsection "Architectures and platforms" .PP Miscellaneous macOS build fixes (Adam Robinson). .PP \fIOther\fR .IX Subsection "Other" .PP Multiple documentation typos fixed (Yuri Chornoivan). .SS "Security" .IX Subsection "Security" See also \fBguestfs\-security\fR\|(1). .PP \fI\s-1CVE\-2018\-11806\s0\fR .IX Subsection "CVE-2018-11806" .PP Qemu's slirp (userspace networking) had several buffer overflows which could be triggered from the guest or network side. .SS "\s-1API\s0" .IX Subsection "API" \fINew APIs\fR .IX Subsection "New APIs" .ie n .IP """f2fs_expand""" 4 .el .IP "\f(CWf2fs_expand\fR" 4 .IX Item "f2fs_expand" Expand an f2fs filesystem (Pino Toscano). .ie n .IP """inspect_get_osinfo""" 4 .el .IP "\f(CWinspect_get_osinfo\fR" 4 .IX Item "inspect_get_osinfo" Get the libosinfo short \s-1ID\s0 for the inspected guest (Pino Toscano). .ie n .IP """lvm_scan""" 4 .el .IP "\f(CWlvm_scan\fR" 4 .IX Item "lvm_scan" This rescans all PVs, VGs and LVs, optionally activating them. .PP \fIOther \s-1API\s0 changes\fR .IX Subsection "Other API changes" .PP \&\f(CW\*(C`part_get_mbr_part_type\*(C'\fR was reimplemented in OCaml (Nikolay Ivanets). .PP \&\f(CW\*(C`list_filesystems\*(C'\fR now filters out \s-1MBR\s0 extended partitions (Nikolay Ivanets). .PP \&\f(CW\*(C`vgscan\*(C'\fR has been deprecated. Use the new \f(CW\*(C`lvm_scan\*(C'\fR \s-1API\s0 in preference. .SS "Build changes" .IX Subsection "Build changes" The \s-1JSON\s0 library switched from yajl to Jansson ≥ 2.7 (Pino Toscano). .PP Support for The Sleuth Kit 4.5 (Pino Toscano). .PP Multiple improvements in the \f(CW\*(C`./configure\*(C'\fR script (Lin Ma). .PP More out-of-tree build fixes (Hilko Bengen). .PP Some work on reproducible builds (Bernhard M. Wiedemann). .SS "Internals" .IX Subsection "Internals" lvmetad is now used unconditionally, and is started much earlier in the appliance boot process. This fixes support for certain \s-1PV\s0 types. .PP On Debian, dash is installed inside the appliance and in virt-rescue (Pino Toscano). .PP The amount of \s-1RAM\s0 assigned to the appliance has been increased from 500M to 768M (on x86_64, other architectures have different limits). This enables use of up to 255 disks when using recent Linux kernels. .PP Virt\-v2v now models the source machine type (eg. i440FX, Q35 or virt). .PP Virt\-p2v now generates configuration code automatically, also code for parsing the kernel command line. .PP Use \f(CW\*(C`LT_INIT\*(C'\fR instead of \f(CW\*(C`AC_PROG_LIBTOOL\*(C'\fR. .PP The OCaml \f(CW\*(C`JSON\*(C'\fR code for parsing and serializing has been unified into a single abstract data type. .PP Most OCaml tools are now built using the \s-1PIC\s0 runtime. This has a performance penalty on i686, but is relatively free on other architectures and has security benefits. .PP The direct backend now queries the qemu binary for availability of \&\s-1KVM,\s0 instead of using a heuristic based on \fI/dev/kvm\fR (Andrea Bolognani). .PP Our \*(L"clever\*(R" libxml2 writer macros are now used consistently across all parts of the code base. .PP Qemu dropped \fI\-nodefconfig\fR without telling us. The equivalent \&\fI\-no\-user\-config\fR option is now used instead. Qemu also moved the \&\f(CW\*(C`serial\*(C'\fR option from \fI\-drive\fR to \fI\-device\fR, again without any notice, and this is also fixed. .SS "Bugs fixed" .IX Subsection "Bugs fixed" .IP "https://bugzilla.redhat.com/1664310" 4 .IX Item "https://bugzilla.redhat.com/1664310" [\s-1RHEL 7.6 LP\s0] openstack output leaks passwords .IP "https://bugzilla.redhat.com/1661038" 4 .IX Item "https://bugzilla.redhat.com/1661038" virt-inspector fails with \*(L"error: int_of_string\*(R" on a Linux image when /etc/fstab contains a partionless device .IP "https://bugzilla.redhat.com/1651432" 4 .IX Item "https://bugzilla.redhat.com/1651432" v2v \- support for \-insecure option to support \s-1OSP SSL\s0 connection for \s-1VM\s0 migrations .IP "https://bugzilla.redhat.com/1642044" 4 .IX Item "https://bugzilla.redhat.com/1642044" [\s-1RFE\s0] virt\-p2v \s-1UI\s0 should give the option to shutdown after conversion is finished .IP "https://bugzilla.redhat.com/1634248" 4 .IX Item "https://bugzilla.redhat.com/1634248" virt\-v2v cannot convert opensuse15 guest .IP "https://bugzilla.redhat.com/1624902" 4 .IX Item "https://bugzilla.redhat.com/1624902" Fix rhev-apt command that virt\-v2v runs in Windows guests on first boot .IP "https://bugzilla.redhat.com/1624878" 4 .IX Item "https://bugzilla.redhat.com/1624878" Update v2v docs to describe support for \s-1SHA 2\s0 certs required for converting Windows 7 and 2008 R2 guests .IP "https://bugzilla.redhat.com/1615885" 4 .IX Item "https://bugzilla.redhat.com/1615885" Minor log issue of virt\-v2v .IP "https://bugzilla.redhat.com/1614276" 4 .IX Item "https://bugzilla.redhat.com/1614276" VixDiskLib: VixDiskLib_Read: Read 4096 sectors at 57516160 failed. Error 2 (Memory allocation failed. Out of memory.) (DiskLib error 802: \s-1NBD_ERR_INSUFFICIENT_RESOURCES\s0) at 5240. .IP "https://bugzilla.redhat.com/1612785" 4 .IX Item "https://bugzilla.redhat.com/1612785" \&\*(L"warning: was ignored because the device name could not be recognized\*(R" should be hidden since convert cdrom is supported by virt\-v2v .IP "https://bugzilla.redhat.com/1611690" 4 .IX Item "https://bugzilla.redhat.com/1611690" part_to_dev \*(L"/dev/sdp1\*(R" returns \*(L"/dev/sd\*(R" instead of \*(L"/dev/sdp\*(R" .IP "https://bugzilla.redhat.com/1608131" 4 .IX Item "https://bugzilla.redhat.com/1608131" inspection fails when swap partition in /etc/fstab has incorrect \s-1UUID\s0 compared to actual swap partition .IP "https://bugzilla.redhat.com/1605071" 4 .IX Item "https://bugzilla.redhat.com/1605071" On machines where /dev/kvm exists but \s-1KVM\s0 doesn't work, libguestfs will not fall back to \s-1TCG\s0 .IP "https://bugzilla.redhat.com/1602353" 4 .IX Item "https://bugzilla.redhat.com/1602353" virt-inspector can't inspect LUKS-encrypted \s-1RHEL7\s0 guest image .IP "https://bugzilla.redhat.com/1601943" 4 .IX Item "https://bugzilla.redhat.com/1601943" Improve error \*(L"No module named ovirtsdk4\*(R" in v2v rhv-upload conversion .IP "https://bugzilla.redhat.com/1598715" 4 .IX Item "https://bugzilla.redhat.com/1598715" Adding \s-1QXL\s0 device in \s-1OVF\s0 causes Cirrus Logic device to be added to guest .IP "https://bugzilla.redhat.com/1598350" 4 .IX Item "https://bugzilla.redhat.com/1598350" \&\s-1RFE:\s0 virt\-v2v should preserve .IP "https://bugzilla.redhat.com/1596851" 4 .IX Item "https://bugzilla.redhat.com/1596851" Transfer fails if local host is in maintenance mode .IP "https://bugzilla.redhat.com/1596810" 4 .IX Item "https://bugzilla.redhat.com/1596810" Transfer fails if local host belongs to another \s-1DC\s0 .IP "https://bugzilla.redhat.com/1592468" 4 .IX Item "https://bugzilla.redhat.com/1592468" v2v to \s-1RHV\s0 transfer fails with: error: [empty name]: cannot read '//*/disksection' with value: null .IP "https://bugzilla.redhat.com/1592061" 4 .IX Item "https://bugzilla.redhat.com/1592061" virt\-v2v convert rhel5.3 failure when executing rpm \-ql kernel\-2.6.18\-128.el5 command .IP "https://bugzilla.redhat.com/1591789" 4 .IX Item "https://bugzilla.redhat.com/1591789" p2v: error: \s-1XML\s0 error: \s-1CPU\s0 vendor specified without \s-1CPU\s0 model .IP "https://bugzilla.redhat.com/1590220" 4 .IX Item "https://bugzilla.redhat.com/1590220" Hide rhv-upload option in virt\-p2v client .IP "https://bugzilla.redhat.com/1588451" 4 .IX Item "https://bugzilla.redhat.com/1588451" Don't use relative socket paths for \s-1NBD\s0 .IP "https://bugzilla.redhat.com/1588088" 4 .IX Item "https://bugzilla.redhat.com/1588088" \&\s-1RFE:\s0 Support for \-o rhv-upload via Unix domain socket .IP "https://bugzilla.redhat.com/1586198" 4 .IX Item "https://bugzilla.redhat.com/1586198" ovirt-imageio-daemon times out during migration .IP "https://bugzilla.redhat.com/1580309" 4 .IX Item "https://bugzilla.redhat.com/1580309" virt\-v2v rhel7.6 build can't convert guest to null with qemu-kvm rhel7.5.z build .IP "https://bugzilla.redhat.com/1580292" 4 .IX Item "https://bugzilla.redhat.com/1580292" Virt\-v2v rhel7.6 build can't convert guest with qemu-kvm rhel7.5.z build .IP "https://bugzilla.redhat.com/1579047" 4 .IX Item "https://bugzilla.redhat.com/1579047" virt-builder: ubuntu\-18.04 template has stray \s-1HTTP\s0 proxy configured for apt .IP "https://bugzilla.redhat.com/1575640" 4 .IX Item "https://bugzilla.redhat.com/1575640" virt-builder: error: host cpu (x86_64) and guest arch (unknown) are not compatible .IP "https://bugzilla.redhat.com/1570407" 4 .IX Item "https://bugzilla.redhat.com/1570407" virt\-v2v \-i ova gives checksum error when missing files are mentioned in .mf .IP "https://bugzilla.redhat.com/1567763" 4 .IX Item "https://bugzilla.redhat.com/1567763" guestfsd: error: /Windows/Drivers/VirtIO: Read-only file system .IP "https://bugzilla.redhat.com/1564983" 4 .IX Item "https://bugzilla.redhat.com/1564983" The mount-vfs failed to mount the logical volume .IP "https://bugzilla.redhat.com/1561828" 4 .IX Item "https://bugzilla.redhat.com/1561828" \&\s-1RHV\s0 tools not properly installed in migrated Windows \s-1VM\s0's causing boot failure .IP "https://bugzilla.redhat.com/1559027" 4 .IX Item "https://bugzilla.redhat.com/1559027" virt\-v2v does not honor \-\-network with \-o rhv-upload .IP "https://bugzilla.redhat.com/1557273" 4 .IX Item "https://bugzilla.redhat.com/1557273" [\s-1RFE\s0] Upload images directly to oVirt (virt\-v2v \-o rhv-upload) .IP "https://bugzilla.redhat.com/1544842" 4 .IX Item "https://bugzilla.redhat.com/1544842" [\s-1RFE\s0] Add libosinfo short-id to virt-inspector output .IP "https://bugzilla.redhat.com/1544674" 4 .IX Item "https://bugzilla.redhat.com/1544674" virt-inspector \-\-help differs from manpage .IP "https://bugzilla.redhat.com/1544227" 4 .IX Item "https://bugzilla.redhat.com/1544227" \&\s-1RFE:\s0 recognize the Kali Linux distribution .IP "https://bugzilla.redhat.com/1532224" 4 .IX Item "https://bugzilla.redhat.com/1532224" Resume=/dev/sdaX can't be updated to resume=/dev/vdaX in rhel7 guest's grub file after v2v conversion .IP "https://bugzilla.redhat.com/1530967" 4 .IX Item "https://bugzilla.redhat.com/1530967" Change categories of \*(L"Guest Operating system management by \s-1VIX API\*(R"\s0 in v2v man page .IP "https://bugzilla.redhat.com/1527334" 4 .IX Item "https://bugzilla.redhat.com/1527334" Various \-it vddk \-io vddk* options should be documented, removed or fixed .IP "https://bugzilla.redhat.com/1148012" 4 .IX Item "https://bugzilla.redhat.com/1148012" \&\fBReverted:\fR \&\s-1RFE:\s0 Allow qemu-bridge-helper to be used to implement guestfs_set_network .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBguestfs\-examples\fR\|(1), \&\fBguestfs\-faq\fR\|(1), \&\fBguestfs\-performance\fR\|(1), \&\fBguestfs\-recipes\fR\|(1), \&\fBguestfs\-testing\fR\|(1), \&\fBguestfs\fR\|(3), \&\fBguestfish\fR\|(1), http://libguestfs.org/ .SH "AUTHOR" .IX Header "AUTHOR" Richard W.M. Jones .SH "COPYRIGHT" .IX Header "COPYRIGHT" Copyright (C) 2009\-2023 Red Hat Inc. .SH "LICENSE" .IX Header "LICENSE" This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but \&\s-1WITHOUT ANY WARRANTY\s0; without even the implied warranty of \&\s-1MERCHANTABILITY\s0 or \s-1FITNESS FOR A PARTICULAR PURPOSE.\s0 See the \s-1GNU\s0 General Public License for more details. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, \s-1MA 02110\-1301 USA.\s0 .SH "BUGS" .IX Header "BUGS" To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP When reporting a bug, please supply: .IP "\(bu" 4 The version of libguestfs. .IP "\(bu" 4 Where you got libguestfs (eg. which Linux distro, compiled from source, etc) .IP "\(bu" 4 Describe the bug accurately and give a way to reproduce it. .IP "\(bu" 4 Run \fBlibguestfs\-test\-tool\fR\|(1) and paste the \fBcomplete, unedited\fR output into the bug report.