I'm pleased to announce libguestfs 1.40, a library and a set of tools
for accessing and modifying virtual machine disk images.
This release represents about a year of work by many contributors.
I'd like to call out in particular substantial contributions from:
Pino Toscano, Tomáš Golembiovský, Nir Soffer and Nikolay Ivanets.
See the release notes below for full details.
You can get libguestfs 1.40 from here:
Main website: http://libguestfs.org/ [not updated yet]
Source: http://libguestfs.org/download/1.40-stable/
Fedora: https://koji.fedoraproject.org/koji/packageinfo?packageID=8391
Debian/experimental: https://packages.debian.org/libguestfs0
Rich.
----------------------------------------------------------------------
Release notes for libguestfs 1.40
These are also available online at:
http://libguestfs.org/guestfs-release-notes.1.html
New features
New features in existing tools
Virt-inspector now displays the libosinfo short ID for guests (Pino
Toscano).
Guestfish -N will now generate 1G disks instead of 100M disks by
default.
Virt-resize supports f2fs filesystems (Pino Toscano).
libguestfs-test-tool now supports bash tab completion (Pino Toscano).
The --machine-readable 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).
Virt-builder --uninstall option now works on SUSE (Sebastian Meyer).
Virt-builder now supports Windows. We are not able to ship Windows
templates in the public respository for obvious licensing reasons, but
if you are an MSDN subscriber you may build your own. See
https://rwmj.wordpress.com/2018/09/13/creating-windows-templates-for-virt-builder/
Many tools now support a --key 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).
virt-v2v and virt-p2v
New -o rhv-upload mode for directly uploading images to RHV, bypassing
the Export Storage Domain (Tomáš Golembiovský, Nir Soffer, Daniel Erez,
Pino Toscano).
New -o openstack mode for directly uploading images to OpenStack and
Cinder using OpenStack APIs.
Virt-v2v now has a general mechanism for input and output options: -io
and -oo.
Virt-v2v can now install the RHV tools or QEMU GA in guests (Tomáš
Golembiovský).
The huge manual has now been split into several smaller documents and
is more focused on helping users to accomplish specific v2v tasks.
Multiple improvements to the OVF metadata when converting to RHV (Tomáš
Golembiovský, Pino Toscano, Arik Hadas).
Virt-v2v can now convert Linux guests with split kernel packages,
especially Ubuntu 18.04 (Pino Toscano).
Virt-v2v old --password-file option has been replaced by -ip (the old
option remains for backwards compatibility).
Virt-v2v now preserves the VM Generation ID.
Virt-v2v has a new --mac option allowing specific NICs to be mapped
precisely to networks or bridges on the target.
New virt-v2v --print-estimate option to estimate the size of data that
virt-v2v will copy.
Virt-v2v is now usually able to remove open-vm-tools and VMware Tools
from the Linux guest during conversion (Pino Toscano).
Virt-v2v can now support UEFI conversions to RHV (Tomáš Golembiovský).
Virt-p2v now prefers you to shut down instead of rebooting the machine
after conversion has finished (Pino Toscano).
Virt-v2v now writes the libosinfo short ID to the libvirt metadata when
using -o local and -o libvirt output modes (Martin Kletzander).
Language bindings
OpenJDK 10+ is supported (Pino Toscano).
Java bindings fixed for Gentoo host (Martin Kletzander).
Inspection
Support Kali Linux (Pino Toscano).
When inspecting mountpoints, look for /etc/mdadm/mdadm.conf as well as
/etc/mdadm.conf (Nikolay Ivanets).
Improved support for OpenSUSE Tumbleweed (Pino Toscano).
Architectures and platforms
Miscellaneous macOS build fixes (Adam Robinson).
Other
Multiple documentation typos fixed (Yuri Chornoivan).
Security
See also guestfs-security(1).
CVE-2018-11806
Qemu's slirp (userspace networking) had several buffer overflows
which
could be triggered from the guest or network side.
API
New APIs
"f2fs_expand"
Expand an f2fs filesystem (Pino Toscano).
"inspect_get_osinfo"
Get the libosinfo short ID for the inspected guest (Pino Toscano).
"lvm_scan"
This rescans all PVs, VGs and LVs, optionally activating them.
Other API changes
"part_get_mbr_part_type" was reimplemented in OCaml (Nikolay
Ivanets).
"list_filesystems" now filters out MBR extended partitions
(Nikolay
Ivanets).
"vgscan" has been deprecated. Use the new "lvm_scan"
API in
preference.
Build changes
The JSON library switched from yajl to Jansson ≥ 2.7 (Pino Toscano).
Support for The Sleuth Kit 4.5 (Pino Toscano).
Multiple improvements in the "./configure" script (Lin Ma).
More out-of-tree build fixes (Hilko Bengen).
Some work on reproducible builds (Bernhard M. Wiedemann).
Internals
lvmetad is now used unconditionally, and is started much earlier in the
appliance boot process. This fixes support for certain PV types.
On Debian, dash is installed inside the appliance and in virt-rescue
(Pino Toscano).
The amount of RAM 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.
Virt-v2v now models the source machine type (eg. i440FX, Q35 or virt).
Virt-p2v now generates configuration code automatically, also code for
parsing the kernel command line.
Use "LT_INIT" instead of "AC_PROG_LIBTOOL".
The OCaml "JSON" code for parsing and serializing has been
unified into
a single abstract data type.
Most OCaml tools are now built using the PIC runtime. This has a
performance penalty on i686, but is relatively free on other
architectures and has security benefits.
The direct backend now queries the qemu binary for availability of KVM,
instead of using a heuristic based on /dev/kvm (Andrea Bolognani).
Our "clever" libxml2 writer macros are now used consistently
across all
parts of the code base.
Qemu dropped -nodefconfig without telling us. The equivalent
-no-user-config option is now used instead. Qemu also moved the
"serial" option from -drive to -device, again without any
notice, and
this is also fixed.
Bugs fixed
https://bugzilla.redhat.com/1664310
[RHEL 7.6 LP] openstack output leaks passwords
https://bugzilla.redhat.com/1661038
virt-inspector fails with "error: int_of_string" on a Linux
image
when /etc/fstab contains a partionless device
https://bugzilla.redhat.com/1651432
v2v - support for -insecure option to support OSP SSL connection
for VM migrations
https://bugzilla.redhat.com/1642044
[RFE] virt-p2v UI should give the option to shutdown after
conversion is finished
https://bugzilla.redhat.com/1634248
virt-v2v cannot convert opensuse15 guest
https://bugzilla.redhat.com/1624902
Fix rhev-apt command that virt-v2v runs in Windows guests on first
boot
https://bugzilla.redhat.com/1624878
Update v2v docs to describe support for SHA 2 certs required for
converting Windows 7 and 2008 R2 guests
https://bugzilla.redhat.com/1615885
Minor log issue of virt-v2v
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: NBD_ERR_INSUFFICIENT_RESOURCES) at 5240.
https://bugzilla.redhat.com/1612785
"warning: <target dev='sr0'> was ignored because
the device name
could not be recognized" should be hidden since convert cdrom is
supported by virt-v2v
https://bugzilla.redhat.com/1611690
part_to_dev "/dev/sdp1" returns "/dev/sd" instead
of "/dev/sdp"
https://bugzilla.redhat.com/1608131
inspection fails when swap partition in /etc/fstab has incorrect
UUID compared to actual swap partition
https://bugzilla.redhat.com/1605071
On machines where /dev/kvm exists but KVM doesn't work,
libguestfs
will not fall back to TCG
https://bugzilla.redhat.com/1602353
virt-inspector can't inspect LUKS-encrypted RHEL7 guest image
https://bugzilla.redhat.com/1601943
Improve error "No module named ovirtsdk4" in v2v rhv-upload
conversion
https://bugzilla.redhat.com/1598715
Adding QXL device in OVF causes Cirrus Logic device to be added to
guest
https://bugzilla.redhat.com/1598350
RFE: virt-v2v should preserve <genid>
https://bugzilla.redhat.com/1596851
Transfer fails if local host is in maintenance mode
https://bugzilla.redhat.com/1596810
Transfer fails if local host belongs to another DC
https://bugzilla.redhat.com/1592468
v2v to RHV transfer fails with: error: [empty name]: cannot read
'//*/disksection' with value: null
https://bugzilla.redhat.com/1592061
virt-v2v convert rhel5.3 failure when executing rpm -ql
kernel-2.6.18-128.el5 command
https://bugzilla.redhat.com/1591789
p2v: error: XML error: CPU vendor specified without CPU model
https://bugzilla.redhat.com/1590220
Hide rhv-upload option in virt-p2v client
https://bugzilla.redhat.com/1588451
Don't use relative socket paths for NBD
https://bugzilla.redhat.com/1588088
RFE: Support for -o rhv-upload via Unix domain socket
https://bugzilla.redhat.com/1586198
ovirt-imageio-daemon times out during migration
https://bugzilla.redhat.com/1580309
virt-v2v rhel7.6 build can't convert guest to null with qemu-kvm
rhel7.5.z build
https://bugzilla.redhat.com/1580292
Virt-v2v rhel7.6 build can't convert guest with qemu-kvm
rhel7.5.z
build
https://bugzilla.redhat.com/1579047
virt-builder: ubuntu-18.04 template has stray HTTP proxy configured
for apt
https://bugzilla.redhat.com/1575640
virt-builder: error: host cpu (x86_64) and guest arch (unknown) are
not compatible
https://bugzilla.redhat.com/1570407
virt-v2v -i ova gives checksum error when missing files are
mentioned in .mf
https://bugzilla.redhat.com/1567763
guestfsd: error: /Windows/Drivers/VirtIO: Read-only file system
https://bugzilla.redhat.com/1564983
The mount-vfs failed to mount the logical volume
https://bugzilla.redhat.com/1561828
RHV tools not properly installed in migrated Windows VM's causing
boot failure
https://bugzilla.redhat.com/1559027
virt-v2v does not honor --network with -o rhv-upload
https://bugzilla.redhat.com/1557273
[RFE] Upload images directly to oVirt (virt-v2v -o rhv-upload)
https://bugzilla.redhat.com/1544842
[RFE] Add libosinfo short-id to virt-inspector output
https://bugzilla.redhat.com/1544674
virt-inspector --help differs from manpage
https://bugzilla.redhat.com/1544227
RFE: recognize the Kali Linux distribution
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
https://bugzilla.redhat.com/1530967
Change categories of "Guest Operating system management by VIX
API"
in v2v man page
https://bugzilla.redhat.com/1527334
Various -it vddk -io vddk* options should be documented, removed or
fixed
https://bugzilla.redhat.com/1148012
Reverted: RFE: Allow qemu-bridge-helper to be used to implement
guestfs_set_network
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW