1guestfs-release-notes-1.28(1)Virtualization Supportguestfs-release-notes-1.28(1)
2
3
4

NAME

6       guestfs-release-notes - libguestfs Release Notes
7

RELEASE NOTES FOR LIBGUESTFS 1.28

9       These release notes only cover the differences from the previous
10       stable/dev branch split (1.26.0).  For detailed changelogs, please see
11       the git repository, or the ChangeLog file distributed in the tarball.
12
13   New features
14       Tools
15
16       virt-v2v(1) and virt-p2v(1) are tools for converting from foreign
17       hypervisors (such as VMware or Xen) or physical machines, to KVM.
18       These tools were previously a separate project.  The code for both
19       tools has been integrated into the libguestfs tree.  As part of the
20       refactoring, virt-p2v has been rewritten (from Ruby, now C), and
21       virt-v2v now uses several modern features of qemu which make it run
22       many times faster than before.  virt-v2v(1) can import from: VMware
23       vCenter, VMware OVA files, local disk files, libvirt, RHEL 5 Xen.  It
24       can output to: oVirt or Red Hat Enterprise Virtualization (RHEV-M),
25       OpenStack Glance, libvirt, qemu, local disk files.
26
27       virt-log(1) is a new tool for listing log files from guests.  It
28       supports a variety of guests including Linux traditional, Linux using
29       journal, and Windows event log.
30
31       virt-builder(1) has a new "--machine-readable" option to make it
32       simpler to consume virt-builder from other programs.
33
34       New virt-builder(1) and virt-customize(1) --chmod option.
35
36       virt-sysprep(1) will now remove: systemd journals, anaconda logs,
37       lightdm logs, debian-installer files, apt logs, exim logs, ConsoleKit
38       logs, firewalld logs, grubby logs, proftpd logs, libvirt/libxml logs,
39       and several other log files.  The virt-sysprep "user-account" operation
40       is now able to remove or keep particular user accounts.  (Pino
41       Toscano).
42
43       New guestmount(1) --fd option, allowing you to run guestmount captive
44       under another process.
45
46       virt-sparsify(1) has a new --tmp option allowing you to precisely
47       control where temporary files are stored.
48
49       virt-sparsify(1) can now write to a block device.
50
51       virt-customize(1) and virt-sysprep(1) now support adding firstboot
52       scripts to Windows guests.
53
54       virt-cat(1), virt-edit(1), virt-ls(1) now support the -m option,
55       allowing you to override automatic inspection of guests and instead
56       specify where to mount partitions (Pino Toscano).
57
58       The virt tools now have coloured output: green for OK, red for errors,
59       blue for warnings.
60
61       Language bindings
62
63       You can build a Python distribution using "make -C python sdist"
64
65       Ruby bindings have switched from "Test::Unit" to "MiniTest".
66
67       The Java bindings are now compatible with OpenJDK 8 (Pino Toscano).
68
69       Inspection
70
71       Oracle Linux is returned as "oraclelinux" (Nikos Skalkotos).
72
73       Linux guests which do not have /etc/fstab can now be handled (Pino
74       Toscano).
75
76       Minix is returned as "minix" (Pino Toscano).
77
78       Architectures
79
80       Aarch64 (64 bit ARM) support has been added.
81
82       Inspection and the "guestfs_file_architecture" call can now recognize
83       arm (32 bit) and aarch64 guests.
84
85   Security
86       CVE-2014-0191 Network usage and entity resolution in XML parsing
87           Libguestfs previously used unsafe libxml2 APIs for parsing libvirt
88           XML.  These APIs defaulted to allowing network connections to be
89           made when certain XML documents were presented.  Using a malformed
90           XML document it was also possible to exhaust all CPU, memory or
91           file descriptors on the machine.
92
93           Since the libvirt XML comes from a trusted source (the libvirt
94           daemon) it is not thought that this could have been exploitable.
95
96           This was fixed in libguestfs ≥ 1.27.9 and the fix was backported to
97           stable versions ≥ 1.26.2, ≥ 1.24.9, ≥ 1.22.10 and ≥ 1.20.13.
98           (Thanks: Dan Berrange, Pino Toscano).
99
100       Shellshock (bash CVE-2014-6271)
101           This bash bug indirectly affects libguestfs.  For more information
102           see:
103           https://www.redhat.com/archives/libguestfs/2014-September/msg00252.html
104
105   API
106       New APIs
107
108       "guestfs_clear_backend_setting"
109       "guestfs_get_backend_setting"
110       "guestfs_set_backend_setting"
111           Use these APIs to set individual backend settings.
112
113       "guestfs_cpio_out"
114           Convert a directory within the disk image to cpio format.
115
116       "guestfs_journal_get_realtime_usec"
117           Fetch precise journal times, see sd_journal_get_realtime_usec(3).
118
119       "guestfs_lstatns"
120       "guestfs_lstatnslist"
121       "guestfs_statns"
122           Enhanced versions of "guestfs_lstat", "guestfs_lstatlist",
123           "guestfs_stat" which return nanosecond timestamps.
124
125   Build changes
126       Libguestfs can now be built with qemu 2.x.
127
128       Add support for packaging the appliance on Mageia (Joseph Wang, Thierry
129       Vignaud).
130
131       Augeas is now a required dependency.
132
133       Flex and bison are now required dependencies.
134
135   Internals
136       User-Mode Linux (UML) is no longer a supported backend (although still
137       available).  It will be supported again once someone steps in and fixes
138       various regressions and brokenness in the UML (Linux) kernel.
139
140       You can now connect gdb to qemu by specifying
141       "LIBGUESTFS_BACKEND_SETTINGS=gdb"
142
143       Serial BIOS (sgabios) is now used by the libvirt backend (on x86 only)
144       so that we see early BIOS messages.
145
146       For the OCaml virt tools, exceptions are now handled and printed by a
147       common function.
148
149       A GCC warning about large stack frames is now enabled by default.
150       Several places that used large arrays and structures on the stack have
151       been fixed.
152
153       There is now a test for booting the appliance repeatedly.  Useful for
154       finding kernel leaks.  See: tests/qemu/qemu-boot.c
155
156       There is a test for testing the speed of various qemu features such as
157       virtio-serial uploads and block device writes.  See:
158       tests/qemu/qemu-speed-test.c
159
160       GCC warnings are now enabled for OCaml-C bindings in the OCaml virt
161       tools.
162
163       The code for editing files used by virt-edit(1), guestfish(1) "edit"
164       command, virt-customize(1) --edit option and more is now shared between
165       all these utilities (thanks Pino Toscano).
166
167       The FUSE tests were rewritten in C to ensure finer control over how
168       system calls are tested.
169
170       The update-bugs.sh script has been fixed so it should no longer create
171       an empty "BUGS" file if the Bugzilla server is unavailable.
172
173       The virt-resize(1) tests now use a stochastic method to ensure much
174       deeper and broader testing.
175
176       When the network is enabled, the appliance now uses DHCP to acquire an
177       IP address.
178
179       If libvirt is being used then the appliance will connect to "virbr0"
180       (can be overridden by setting
181       "LIBGUESTFS_BACKEND_SETTINGS=network_bridge=<some_bridge>").  This
182       enables full-featured network connections, with working ICMP, ping and
183       so on.
184
185   Bugs fixed
186       https://bugzilla.redhat.com/1153515
187           empty (but set) LIBGUESTFS_BACKEND prints libguestfs: error:
188           invalid backend:
189
190       https://bugzilla.redhat.com/1151766
191           libguestfs-bash-completion package contains file
192           /usr/share/bash-completion/completions/virt-log, but no _virt_log()
193           function in that file
194
195       https://bugzilla.redhat.com/1151738
196           typo error in man page of virt-edit
197
198       https://bugzilla.redhat.com/1151033
199           virt-v2v conversions from VMware vCenter server run slowly
200
201       https://bugzilla.redhat.com/1150880
202           virt-v2v: warning: display <graphics type='sdl'> was ignored when
203           converting rhel5 guest with sdl graphics
204
205       https://bugzilla.redhat.com/1150867
206           'copy-file-to-file /src /dest' create file /dest even if command
207           'copy-file-to-file /src /dest' failed
208
209       https://bugzilla.redhat.com/1150815
210           Can not find "RECURSIVE LONG LISTING" in 'man virt-diff'
211
212       https://bugzilla.redhat.com/1150701
213           virt-v2v does not fstrim data disks and non-mounted filesystems
214
215       https://bugzilla.redhat.com/1150475
216           Exporting 2+ disk guest to RHEV, only one disk shows after import
217
218       https://bugzilla.redhat.com/1148355
219           virt-filesystems: incorrect LVM vg name when listing Fedora 21
220           Alpha Atomic image filesystems
221
222       https://bugzilla.redhat.com/1148072
223           Option missing --no-selinux-relabel
224
225       https://bugzilla.redhat.com/1148012
226           RFE: Allow qemu-bridge-helper to be used to implement
227           guestfs_set_network
228
229       https://bugzilla.redhat.com/1146815
230           virt-v2v prints warning: /files/etc/fstab/8/spec references unknown
231           device "cdrom"
232
233       https://bugzilla.redhat.com/1146275
234           regression setting root password with virt-builder/virt-customize
235
236       https://bugzilla.redhat.com/1146017
237           virt-v2v -v -x during windows guest conversion will hang at hivex:
238           hivex_open: used block id ……
239
240       https://bugzilla.redhat.com/1145995
241           Improve the error info when converting windows guest with unclean
242           file system
243
244       https://bugzilla.redhat.com/1145916
245           virt-v2v fails to convert win7 guest
246
247       https://bugzilla.redhat.com/1144891
248           RFE: stat calls do not return nanosecond timestamps
249
250       https://bugzilla.redhat.com/1144766
251           futimens() is a no-op via guestmount
252
253       https://bugzilla.redhat.com/1144201
254           guestfish can not restore terminal's output colour when exit
255           guestfish, if the terminal's background colour is black then it
256           will make a inconvenient
257
258       https://bugzilla.redhat.com/1143949
259           virt-customize option '--password-crypto' do not work
260
261       https://bugzilla.redhat.com/1143887
262           Warning shows when converting guests to rhev:chown: changing
263           ownership of ‘/tmp/v2v.u48xag/*.ovf’: Invalid argument
264
265       https://bugzilla.redhat.com/1143883
266           warning shows when converting rhel7 guest:virt-v2v:could not update
267           grub2 console: aug_get: no matching node (ignored)
268
269       https://bugzilla.redhat.com/1143866
270           virt-v2v fails with error: cannot open Packages index using db5
271
272       https://bugzilla.redhat.com/1142416
273           part-get-name give 'libguestfs: error: part_get_name: parted does
274           not support the machine output (-m)' error message when run
275           'part-get-name /dev/sda 1'
276
277       https://bugzilla.redhat.com/1142186
278           virt-sysprep option '--mount-options' don't work well
279
280       https://bugzilla.redhat.com/1142158
281           Illegal command 'part-get-name /dev/sda1 1' cause libguestfs
282           appliance crashed
283
284       https://bugzilla.redhat.com/1142004
285           virt-v2v prints warning:WARNING:/files/boot/grub/device.map
286           references unknown device "xvda"
287
288       https://bugzilla.redhat.com/1141723
289           virt-v2v: error: disk sda has no defined format shows when
290           converting xen hvm guest
291
292       https://bugzilla.redhat.com/1141680
293           [RFE] virt-v2 should support convert a domain with using domain's
294           UUID instead of domain name
295
296       https://bugzilla.redhat.com/1141631
297           [RFE] virt-v2 should support convert a guest to a dir-pool with
298           using pool's uuid
299
300       https://bugzilla.redhat.com/1141157
301           virt-sysprep option '--user-accounts' don't work well
302
303       https://bugzilla.redhat.com/1141145
304           virt-v2v fails to convert xen pv guests.
305
306       https://bugzilla.redhat.com/1141113
307           virt-v2v fails to convert esx guests
308
309       https://bugzilla.redhat.com/1140946
310           qemu-img shows error message for backing file twice
311
312       https://bugzilla.redhat.com/1140894
313           No error messages output if append '--format qcow2' after '-a
314           guest.img', guest.img is a raw format image file
315
316       https://bugzilla.redhat.com/1140547
317           virt-builder option '--format' don't work well
318
319       https://bugzilla.redhat.com/1140156
320           RFE: Export to RHEV data domain
321
322       https://bugzilla.redhat.com/1140050
323           No error shows when multiple conflicting options used with virt-v2v
324
325       https://bugzilla.redhat.com/1139973
326           Improve the error info when converting xen guest with no
327           passwordless SSH access configured
328
329       https://bugzilla.redhat.com/1139543
330           Improve the error info when converting guest with no space left
331
332       https://bugzilla.redhat.com/1138586
333           No error shows when converting running guest with virt-v2v
334
335       https://bugzilla.redhat.com/1138184
336           virt-v2v will fail when converting guests with initramfs-*kdump.img
337           under /boot
338
339       https://bugzilla.redhat.com/1138182
340           xen guest will be kernel panic after converted by virt-v2v
341
342       https://bugzilla.redhat.com/1130189
343           Annoying message about permissions of /dev/kvm
344
345       https://bugzilla.redhat.com/1123007
346           libguestfs 'direct' backend should close file descriptors before
347           exec-ing qemu to avoid leaking !O_CLOEXEC fds
348
349       https://bugzilla.redhat.com/1122557
350           virt-sparsify overwrites block devices if used as output files
351
352       https://bugzilla.redhat.com/1113156
353           Empty fstab breaks libguestfs inspection
354
355       https://bugzilla.redhat.com/1111662
356           Guestfs.Error("vgchange_uuid_all:   Volume group has active logical
357           volumes")
358
359       https://bugzilla.redhat.com/1109174
360           virt-win-reg manual page is corrupted
361
362       https://bugzilla.redhat.com/1106548
363           root gets an error accessing to a non-root dir on a snapshot
364           guestmount VMDK img
365
366       https://bugzilla.redhat.com/1103877
367           These APIs also need to add to `guestfish -h` command list
368
369       https://bugzilla.redhat.com/1102448
370           mageia package list is incorrect
371
372       https://bugzilla.redhat.com/1102447
373           libguestfs 1.27.13 does not build due to libxml library order
374
375       https://bugzilla.redhat.com/1100498
376           RFE: non-polling mechanism to detect guestmount --no-fork readiness
377
378       https://bugzilla.redhat.com/1099490
379           scrub-file can't handle link file
380
381       https://bugzilla.redhat.com/1099284
382           typo errors in man pages
383
384       https://bugzilla.redhat.com/1098718
385           RFE: virt-builder aliases
386
387       https://bugzilla.redhat.com/1096465
388           virt-builder "proxy=off" setting doesn't turn off the proxy for
389           downloads
390
391       https://bugzilla.redhat.com/1094746
392           virt-sparsify man failes to mention what happens to snapshots
393           within a qcow2 image (they are discarded)
394
395       https://bugzilla.redhat.com/1092753
396           virt-builder: If several repos contain the same os-version images,
397           then they are duplicated in -l output
398
399       https://bugzilla.redhat.com/1091803
400           tar-in-opts execute failed that cause libguestfs appliance crashed
401
402       https://bugzilla.redhat.com/1088424
403           virt-resize: libguestfs error: part_set_name: parted: /dev/sdb:
404           Error during translation: Invalid or incomplete multibyte or wide
405           character
406
407       https://bugzilla.redhat.com/1088262
408           virt-builder cannot write to a block device
409
410       https://bugzilla.redhat.com/1085029
411           Ruby tests fail with latest Ruby
412
413       https://bugzilla.redhat.com/1079210
414           virt-sparsify --in-place cannot sparsify as much as it should
415
416       https://bugzilla.redhat.com/1079182
417           virt-df cannot report used disk space of windows guest when updated
418           to 6.5
419
420       https://bugzilla.redhat.com/1077817
421           virt-builder error: "syntax error at line 3: syntax error"
422
423       https://bugzilla.redhat.com/1056290
424           virt-sparsify overwrites block devices if used as output files
425
426       https://bugzilla.redhat.com/812970
427           virt-rescue cannot set ≥<rescue> prompt, on Ubuntu 12.04
428

SEE ALSO

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

AUTHOR

435       Richard W.M. Jones
436
438       Copyright (C) 2009-2020 Red Hat Inc.
439

LICENSE

441       This program is free software; you can redistribute it and/or modify it
442       under the terms of the GNU General Public License as published by the
443       Free Software Foundation; either version 2 of the License, or (at your
444       option) any later version.
445
446       This program is distributed in the hope that it will be useful, but
447       WITHOUT ANY WARRANTY; without even the implied warranty of
448       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
449       General Public License for more details.
450
451       You should have received a copy of the GNU General Public License along
452       with this program; if not, write to the Free Software Foundation, Inc.,
453       51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
454

BUGS

456       To get a list of bugs against libguestfs, use this link:
457       https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
458
459       To report a new bug against libguestfs, use this link:
460       https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
461
462       When reporting a bug, please supply:
463
464       •   The version of libguestfs.
465
466       •   Where you got libguestfs (eg. which Linux distro, compiled from
467           source, etc)
468
469       •   Describe the bug accurately and give a way to reproduce it.
470
471       •   Run libguestfs-test-tool(1) and paste the complete, unedited output
472           into the bug report.
473
474
475
476libguestfs-1.46.0                 2021-09-23     guestfs-release-notes-1.28(1)
Impressum