1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232
|
=head1 НАЗВА
guestfs-release-notes - нотатки щодо випусків libguestfs
=head1 НОТАТКИ ЩОДО ВИПУСКУ LIBGUESTFS 1.18
Ці нотатки щодо випуску стосуються лише відмінностей від попереднього
стабільного випуску (1.16.0). Докладний журнал змін є частиною журналу змін
сховища git. Його також наведено у файлі ChangeLog, який є частиною архіву
tar із кодом бібліотеки.
=head2 Нові можливості
=head3 virt tools
- virt-sysprep переписано із розширенням можливостей (дякуємо Wanlong Gao)
http://libguestfs.org/virt-sysprep.1.html
- virt-sparsify --zero — новий параметр, який занулює вказаний за назвою розділ або файлову систему
- virt-sparsify тепер може безпечно розріджувати розділи резервної пам'яті Linux
- virt-sparsify виправлено так, щоб вона виконувала спорожнення після ^C
http://libguestfs.org/virt-sparsify.1.html
- створено новий інструмент «libguestfs-make-fixed-appliance» для збирання фіксованих базових систем, які може бути скопійовано на інші машини, де не передбачено підтримки febootstrap
http://libguestfs.org/libguestfs-make-fixed-appliance.1.html
- virt-filesystems тепер показує батьківські записи (контейнери) MD
devices and volume groups
- virt-alignment-scan, запущена без аргументів, показує дані щодо вирівнювання для усіх доменів libvirt
- virt-df та virt-alignment-scan показують інформацію з усіх гостьових систем, навіть якщо диск недоступний
- новий параметр virt-rescue --scratch для створення тестових дисків
https://rwmj.wordpress.com/2012/04/26/virt-rescue-scratch/#content
- virt-make-fs тепер можна скористатися для створення btrfs
- virt-edit зберігає права доступу, UID, GID та контекст SELinux під час редагування файлів
- guestfish передає подію закриття за допомогою stdout та віддаленого зв'язку належним чином
- новий параметр guestfish --pipe-error надає вам змогу виявляти помилку у каналах командної обробки
- guestfish, у замінниках тепер розгортаються назви пристроїв
- усі засоби віртуалізації тепер правильно обробляють коми і двокрапки у назвах файлів
=head3 перевірка
- додано підтримку Fedora 17+
- додано підтримку FreeDOS
- додано підтримку Buildroot та Cirros
- засіб інспектування тепер повністю сумісний із гостьовими системами Windows, які оброблено sysprep (дякуємо Grant Williamson).
=head3 API
- реалізовано широку підтримку btrfs, зокрема додавання декількох пристроїв, fsck, знімки (дякуємо Wanlong Gao)
- новий програмний інтерфейс mount-local впроваджує підтримку FUSE безпосередньо до основного програмного інтерфейсу libguestfs
https://rwmj.wordpress.com/2012/05/14/tip-using-mount-local-api-from-c/#content
- нова сторінка підручника: guestfs-performance(1), де містяться підказки щодо поліпшення швидкодії
http://libguestfs.org/guestfs-performance.1.html
- Нова сторінка підручника: guestfs-faq(1), Поширені питання та відповіді на них
http://libguestfs.org/guestfs-faq.1.html
- тепер для програмних інтерфейсів, підтримки яких не передбачено, повертається ENOTSUP (від guestfs_last_errno)
=head3 приклади
- у прикладі copy_over продемонстровано копіювання між двома дескрипторами
- програма display_icon показує піктограму, пов'язану із гостьовою системою
- приклад mount_local.c» демонструє, як користуватися програмним інтерфейсом mount-local
=head2 Безпека
(у цьому випуску не було виявлено або виправлено жодної проблеми захисту)
=head2 Нові програмні інтерфейси
rfs-device-add: додавання пристроїв до файлової системи btrfs.
btrfs-device-delete: вилучення пристроїв із файлової системи btrfs.
btrfs-filesystem-sync: синхронізація файлової системи btrfs.
btrfs-filesystem-balance: балансування файлової системи btrfs.
btrfs-fsck: перевірка файлової системи btrfs.
btrfs-set-seeding: вмикання або вимикання розсіювання.
btrfs-subvolume-create: створення знімка btrfs.
btrfs-subvolume-delete: вилучення знімка btrfs.
btrfs-subvolume-list: виведення списку знімків і підтомів btrfs.
btrfs-subvolume-set-default: встановлення типового підтому btrfs.
btrfs-subvolume-snapshot: створення придатного до запису знімка btrfs.
get-e2attrs: виведення списку атрибутів файла ext2.
get-e2generation: отримання засобу створення файла ext2.
isoinfo, isoinfo-device: отримання даних із заголовка файлів ISO.
llz: виведення списку файлів із даними SELinux.
lvcreate-free: створення логічного тому LVM у відсотках до залишкового вільного місця.
md-stat: повертає список підлеглих пристроїв пристрою MD.
mkfs-brtfs: створення файлової системи btrfs із усіма налаштовуваними параметрами.
mount-local, mount-local-run, umount-local: підтримка FUSE у програмному інтерфейсі.
ntfsclone-in, ntfsclone-out: збереження і відновлення NTFS з резервної копії.
ntfsfix: виправлення типових помилок і примусове виконання у Windows перевірки NTFS.
set-e2attrs: встановити або зняти атрибути ext2 файла.
set-e2generation: встановити створення файла ext2.
set-label: уніфікований інтерфейс для встановлення мітки файлової системи.
vgmeta: отримання метаданих групи томів.
wipefs: витирання підписів файлових систем з пристрою.
zero-free-space: занулення вільного місця у файловій системі.
=head2 Внутрішня частина роботи програми
- Вилучено підкаталог debian/. Рекомендуємо вам користуватися офіційними пакунками Debian, створеними Hilko Bengen.
http://people.debian.org/~bengen/libguestfs/
http://packages.debian.org/search?keywords=libguestfs
- Тепер майже для усіх дескрипторів файлів, які відкриває файлова система, використовується O_CLOEXEC / SOCK_CLOEXEC.
- при послідовному читанні або запису великих файлів викликається posix_fadvise.
- реалізовано закриття усіх дескрипторів файлів та вилучення усіх обробників сигналів у процесі відновлення
- виправлено декілька попереджень gcc та вад, виявлених Coverity; також було виправлено багато вад строго переповнення
- впроваджено використання ./configure --enable-valgrind-daemon для того, щоб можна було скористатися valgrind для фонової служби; виправлено багато помилок
- впроваджено використання ./configure --with-qemu-options для передавання додаткових параметрів qemu
- тепер у фоновій службі є придатний до розширення тип рядкового буфера (DECLARE_STRINGSBUF)
- файл заголовків <guestfs.h> тепер працює у C++, і у нас є перевірка пов'язаних із цим регресій
- декілька програмних інтерфейсів, які слід викликати лише у стані CONFIG, тепер повідомляють про помилку, якщо їх викликано у іншому стані
- виправлено .gitignore так, щоб шляхи були абсолютними
- розгорнуто прив'язки до gobject, зокрема прив'язку подій libguestfs до сигналів gobject (дякуємо Matt Booth)
- належним чином створюється документація gobject (дякуємо Matt Booth)
- файли заголовків gobject тепер зберігаються у окремому підкаталозі
- тепер працює тест CompareWithString у генераторі
- у типах полів структур FUInt32, FUInt64 тепер використовуються належні типи XDR
- тести OCaml тепер працюють із байткодом і звичайним кодом.
- у java використовується -Xlint:all і виправлено усі попередження
- bmptopng, wrestool (тощо) missing або failure більше не виводить повідомлень із попередженнями
- ruby: використано RbConfig замість Config.
- PYTHONPATH встановлюється скриптом ./run.
- процес збирання базової системи тепер є безпечним щодо потоків виконання.
- у базовій системі тепер використовується ip замість програм ifconfig і netstat
- декілька виправлень, які уможливили належну роботу засобів паралельного збирання
- guestfish --listen у новій версії належним чином виконує чищення від зайвих даних
- вилучено стан BUSY
- gettextize вилучено і замінено на простий Makefile.am
- реалізовано підтримку gettext у virt-resize, virt-sparsify і virt-sysprep
- ліпша підтримка архітектури arm
=head2 Виправлені вади
- 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
=head1 ТАКОЖ ПЕРЕГЛЯНЬТЕ
L<guestfs-examples(1)>, L<guestfs-faq(1)>, L<guestfs-performance(1)>,
L<guestfs-recipes(1)>, L<guestfs-testing(1)>, L<guestfs(3)>,
L<guestfish(1)>, L<http://libguestfs.org/>
=head1 АВТОР
Richard W.M. Jones
=head1 АВТОРСЬКІ ПРАВА
Copyright (C) 2009-2020 Red Hat Inc.
|