.\" 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.30 1" .TH guestfs-release-notes-1.30 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 "НАЗВА" .IX Header "НАЗВА" guestfs-release-notes \- нотатки щодо випусків libguestfs .SH "НОТАТКИ ЩОДО ВИПУСКУ LIBGUESTFS 1.30" .IX Header "НОТАТКИ ЩОДО ВИПУСКУ LIBGUESTFS 1.30" Ці нотатки щодо випуску стосуються лише відмінностей від попереднього стабільного випуску (1.28.0). Докладний журнал змін є частиною журналу змін сховища git. Його також наведено у файлі ChangeLog, який є частиною архіву tar із кодом бібліотеки. .SS "Нові можливості" .IX Subsection "Нові можливості" \fIНові інструменти\fR .IX Subsection "Нові інструменти" .PP \&\fBvirt\-dib\fR\|(1) є безпечною і захищеною альтернативою до програми «diskimage\-builder» з OpenStack. Вона сумісна із елементами diskimage-builder. (Pino Toscano) .PP \&\fBvirt\-get\-kernel\fR\|(1) видобуває ядро і диск у пам'яті з образу диска. Раніше ця функціональна можливість була частиною \fBvirt\-builder\fR\|(1), але нова програм є ширшою за можливостями. (Pino Toscano) .PP \fIНові можливості у наявних інструментах\fR .IX Subsection "Нові можливості у наявних інструментах" .PP У режимі \fBvirt\-v2v\fR\|(1) \fI\-i ova\fR програма тепер здатна читати ширший діапазон файлів \s-1OVA,\s0 а також незапаковані файли (каталоги). .PP virt\-v2v тепер безпечно передає параметри до curl, отже, паролі, куки та інші дані будуть недоступними для перегляду іншими користувачами із доступом до командної оболонки та комп'ютері основної системи. .PP У virt\-v2v передбачено новий параметр \fI\-\-password\-file\fR, який надає вам змогу безпечно передати пароль і уникнути роботи із інтерактивним рядком запиту. .PP virt\-v2v вимикає автоматичне перезавантаження Windows, щоб робить діагностику помилок при перетворенні Windows простішою. .PP virt\-v2v тепер постачається із широким зовнішнім комплектом для тестування. Див. \fBvirt\-v2v\-test\-harness\fR\|(1). .PP virt\-v2v надає змогу використовувати драйвери virtio з будь\-якого місця (Roman Kagan), драйвери тепер може бути прочитано безпосередньо з образу \s-1ISO\s0 virtio. .PP У virt\-v2v передбачено перетворення Windows ≥ 8. Зауважте, що ця можливість є експериментальною. Користуйтеся нею обережно. .PP virt\-v2v тепер може перетворювати гостьові системи з \s-1UEFI.\s0 .PP До \fBvirt\-p2v\fR\|(1) додано діалог налаштовування мережі. .PP virt\-p2v тепер має перемикачі \f(CW\*(C`p2v.pre\*(C'\fR, \f(CW\*(C`p2v.post\*(C'\fR і \f(CW\*(C`p2v.fail\*(C'\fR, які уможливлюють довільні скрипти для приготування перетворення і коригування після перетворення. .PP У virt\-p2v тепер використовується досконаліший засіб керування вікнами metacity (замість matchbox). .PP \&\fBvirt\-sysprep\fR\|(1) тепер вилучає \f(CW\*(C`/var/spool/mail/ім\*(Aqя_користувача\*(C'\fR для облікових записів, відмінних від root (Hu Tao). .PP \&\fBvirt\-customize\fR\|(1), \fBvirt\-builder\fR\|(1) і virt-sysprep тепер мають такі нові параметри: .IP "\fI\-\-commands\-from\-file\fR" 4 .IX Item "--commands-from-file" надає змогу читати довгі списки команд з файла, а не з командного рядка (Pino Toscano) .IP "\fI\-\-copy\fR" 4 .IX Item "--copy" копіює файли до гостьової системи (Maros Zatko) .IP "\fI\-\-copy\-in\fR" 4 .IX Item "--copy-in" рекурсивно копіює файли з основної системи до гостьової (Pino Toscano) .IP "\fI\-\-move\fR" 4 .IX Item "--move" пересуває файли у гостьовій системі (Maros Zatko) .IP "\fI\-\-ssh\-inject\fR" 4 .IX Item "--ssh-inject" вставляє ключі \s-1SSH\s0 до гостьової системи (Pino Toscano) .IP "\fI\-\-sm\-attach\fR" 4 .IX Item "--sm-attach" .PD 0 .IP "\fI\-\-sm\-credentials\fR" 4 .IX Item "--sm-credentials" .IP "\fI\-\-sm\-register\fR" 4 .IX Item "--sm-register" .IP "\fI\-\-sm\-remove\fR" 4 .IX Item "--sm-remove" .IP "\fI\-\-sm\-unregister\fR" 4 .IX Item "--sm-unregister" .PD реєструє і скасовує реєстрацію гостьової системи у subscription-manager (Pino Toscano) .IP "\fI\-\-touch\fR" 4 .IX Item "--touch" актуалізує часову позначку файла у гостьовій системі (Pino Toscano) .IP "\fI\-\-truncate\fR" 4 .IX Item "--truncate" .PD 0 .IP "\fI\-\-truncate\-recursive\fR" 4 .IX Item "--truncate-recursive" .PD обрізає файли (Maros Zatko) .PP Поліпшення у підтримці firstboot у virt-customize. Зокрема у Windows firstboot має працювати як і у Linux (Roman Kagan). .PP \&\fBvirt\-df\fR\|(1) тепер може використовувати PolicyKit, \s-1SASL\s0 та інші способи розпізнавання при отриманні списку доменів від libvirt. .PP Поліпшення у доповненні команд guestfish у bash (Pino Toscano). .PP Засіб доповнення команд у bash тепер доповнює і скорочені форми запису параметрів, і повні (Pino Toscano). .PP \&\fBguestfish\fR\|(1) тепер показує короткий опис команди, якщо через командний рядок передається помилкова кількість параметрів (Hu Tao). .PP У virt-builder тепер передбачено підтримку Red Hat Enterprise Linux версій, ах до \s-1RHEL 3.\s0 .PP У virt-builder передбачено підтримку гостьових систем \s-1SUSE,\s0 де використовується zypper (Cédric Bosdonnat). .PP \fIПрив’язки до мов програмування\fR .IX Subsection "Прив’язки до мов програмування" .PP До прив'язок до Java тепер включено перевірені Javadoc, інші поліпшення (Pino Toscano). .PP Декілька виправлень і поліпшень у прив'язках до \s-1PHP\s0 (Pino Toscano). .PP \fIПеревірка\fR .IX Subsection "Перевірка" .PP Засіб інспектування тепер може отримувати піктограми з \s-1RHEL 7\s0 та CentOS 7. .PP \&\fI/etc/favicon.png\fR тепер може бути символічним посиланням. .PP У заснованих на \s-1RPM\s0 гостьових системах засіб інспектування тепер повертає поля Epoch \s-1RPM.\s0 .PP Пакунки Debian тепер мають окремі поля Epoch і Version (Nikos Skalkotos). .PP Додано виявлення OpenBSD, FreeBSD і NetBSD додано як окремі дистрибутиви, інші поліпшення у інспектуванні \s-1BSD\s0 та виправлення вад (Nikos Skalkotos). .PP Додано виявлення CoreOS (Nikos Skalkotos). .PP Засобом керування пакунками у Fedora ≥ 22 є \f(CW\*(C`dnf\*(C'\fR. .PP Тепер можна інспектувати гостьові системи ReactOS (Maros Zatko). .PP Додано підтримку гостьових систем \s-1UEFI.\s0 .PP Інспектування тепер працює, якщо модулі ядра стиснуто за допомогою gzip або xz (Pino Toscano). .PP Засіб інспектування тепер розпізнає гостьові системи ppc64 і ppc64le (Maros Zatko). .PP Засіб інспектування тепер може показувати списки встановлених програм у гостьових системах Archlinux (Nikos Skalkotos). .PP \fIАрхітектури і платформи\fR .IX Subsection "Архітектури і платформи" .PP Тепер підтримка архітектур \s-1PPC64\s0 (\s-1POWER7\s0) і \s-1PPC64LE\s0 (\s-1POWER8\s0) є набагато ліпшою і має працювати без додаткових налаштовувань. .PP Для aarch64 ми використовуємо \s-1AAVMF\s0 (реалізацію \s-1UEFI\s0 з відкритим кодом на основі \s-1OVMF\s0), якщо вона доступна, для запуску базової системи. .PP Для armv7 ми тепер використовуємо типово тип комп'ютера \fI\-M virt\fR. .PP Реалізовано кращу підтримку збирання на платформах, відмінних від Linux (Pino Toscano, Margaret Lewicka). .PP Тепер libguestfs має працювати на 32\-бітових \s-1MIPS\s0 з прямим порядком байтів (\*(L"mipsel\*(R"). Не вдалося перевірити 64\-бітову версію або версію зі зворотним порядком байтів. .SS "Безпека" .IX Subsection "Безпека" .IP "\s-1CVE\-2014\-8484\s0" 4 .IX Item "CVE-2014-8484" .PD 0 .IP "\s-1CVE\-2014\-8485\s0" 4 .IX Item "CVE-2014-8485" .PD Libguestfs раніше запускала програму \fBstrings\fR\|(1) для недовірених файлів. Strings могла обробляти заголовки \s-1BFD\s0 у незахищений спосіб, що могло призвести до виконання довільного коду. Тепер libguestfs запускає strings з прапорцем для забезпечення того, щоб заголовки \s-1BFD\s0 не оброблятимуться. Обробка заголовків могла призвести до втручання у роботу базової системи libguestfs, але оскільки libguestfs додатково обмежує базову систему через віртуалізацію, SELinux та інші методики, це навряд чи могло призвести до розширення прав доступу в основній системі. .IP "XPath\-ін'єкція у virt\-v2v" 4 .IX Item "XPath-ін'єкція у virt-v2v" Було виправлено одну вразливість, пов'язану із XPath\-ін'єкцією у virt\-v2v. Вразливість могла призвести до того, що код зловмисника у гостьовій системі, яка перетворюється за допомогою virt\-v2v, будував довільний вираз XPath, який мало бути оброблено у основній системі (за допомогою бібліотеки libxml2, скомпонованої із виконуваним файлом virt\-v2v). Незрозуміло, яким міг бути ефект від усього цього. .Sp Щоб дізнатися більше, ознайомтеся із внеском https://github.com/libguestfs/libguestfs/commit/6c6ce85f94c36803fe2db35a98db436bff0c14b0 .ie n .IP "Проблеми із відмовою у обслуговуванні при використанні ""qemu\-img info""" 4 .el .IP "Проблеми із відмовою у обслуговуванні при використанні \f(CWqemu\-img info\fR" 4 .IX Item "Проблеми із відмовою у обслуговуванні при використанні qemu-img info" Використовуючи American Fuzzy Lop fuzzer (\f(CW\*(C`afl\-fuzz\*(C'\fR) на програмі \f(CW\*(C`qemu\-img info\*(C'\fR, Richard W.M. Jones виявив, що певні файли можуть спричинити до надмірного використання пам'яті та часу процесора у програмі \f(CW\*(C`qemu\-img\*(C'\fR (наприклад, 6 ГБ оперативної пам'яті та 14 секунд процесорного часу на швидкому процесорі Intel), а іноді призводити до аварійного завершення роботи програми. Оскільки libguestfs може запускати \f(CW\*(C`qemu\-img info\*(C'\fR на образах диска для визначення їхнього вмісту, це могло призвести до повисання або споживання надмірного об'єму пам'яті самою libguestfs. .Sp До libguestfs було внесено зміни щодо обмеження споживання ресурсів за об'ємом і часом, які стосуються \f(CW\*(C`qemu\-img info\*(C'\fR і усувають вказану проблему. Якщо зловмисник спробує передати один зі спеціально створених образів диска libguestfs, \f(CW\*(C`qemu\-img\*(C'\fR завершить роботу в аварійному режимі і поверне керування libguestfs, надавши дані щодо аварії як повідомлення про помилку. .SS "\s-1API\s0" .IX Subsection "API" \fIНові програмні інтерфейси\fR .IX Subsection "Нові програмні інтерфейси" .ie n .IP """guestfs_add_libvirt_dom""" 4 .el .IP "\f(CWguestfs_add_libvirt_dom\fR" 4 .IX Item "guestfs_add_libvirt_dom" Це розкриває раніше закритий програмний інтерфейс, який надає вам змогу передавати об'єкт \f(CW\*(C`virDomainPtr\*(C'\fR безпосередньо від libvirt до libguestfs. .ie n .IP """guestfs_blockdev_setra""" 4 .el .IP "\f(CWguestfs_blockdev_setra\fR" 4 .IX Item "guestfs_blockdev_setra" Коригує параметр readahead для пристроїв. Див. команду \f(CW\*(C`blockdev \-\-setra\*(C'\fR. .ie n .IP """guestfs_btrfs_balance""" 4 .el .IP "\f(CWguestfs_btrfs_balance\fR" 4 .IX Item "guestfs_btrfs_balance" .PD 0 .ie n .IP """guestfs_btrfs_balance_cancel""" 4 .el .IP "\f(CWguestfs_btrfs_balance_cancel\fR" 4 .IX Item "guestfs_btrfs_balance_cancel" .ie n .IP """guestfs_btrfs_balance_pause""" 4 .el .IP "\f(CWguestfs_btrfs_balance_pause\fR" 4 .IX Item "guestfs_btrfs_balance_pause" .ie n .IP """guestfs_btrfs_balance_resume""" 4 .el .IP "\f(CWguestfs_btrfs_balance_resume\fR" 4 .IX Item "guestfs_btrfs_balance_resume" .ie n .IP """guestfs_btrfs_balance_status""" 4 .el .IP "\f(CWguestfs_btrfs_balance_status\fR" 4 .IX Item "guestfs_btrfs_balance_status" .PD Підтримка балансування для файлових систем Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_filesystem_defragment""" 4 .el .IP "\f(CWguestfs_btrfs_filesystem_defragment\fR" 4 .IX Item "guestfs_btrfs_filesystem_defragment" Підтримка дефрагментації файлових систем для файлових систем Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_image""" 4 .el .IP "\f(CWguestfs_btrfs_image\fR" 4 .IX Item "guestfs_btrfs_image" Створює образ файлової системи Btrfs (Chen Hanxiao) .ie n .IP """guestfs_btrfs_qgroup_assign""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_assign\fR" 4 .IX Item "guestfs_btrfs_qgroup_assign" .PD 0 .ie n .IP """guestfs_btrfs_qgroup_create""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_create\fR" 4 .IX Item "guestfs_btrfs_qgroup_create" .ie n .IP """guestfs_btrfs_qgroup_destroy""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_destroy\fR" 4 .IX Item "guestfs_btrfs_qgroup_destroy" .ie n .IP """guestfs_btrfs_qgroup_limit""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_limit\fR" 4 .IX Item "guestfs_btrfs_qgroup_limit" .ie n .IP """guestfs_btrfs_qgroup_remove""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_remove\fR" 4 .IX Item "guestfs_btrfs_qgroup_remove" .ie n .IP """guestfs_btrfs_qgroup_show""" 4 .el .IP "\f(CWguestfs_btrfs_qgroup_show\fR" 4 .IX Item "guestfs_btrfs_qgroup_show" .ie n .IP """guestfs_btrfs_quota_enable""" 4 .el .IP "\f(CWguestfs_btrfs_quota_enable\fR" 4 .IX Item "guestfs_btrfs_quota_enable" .ie n .IP """guestfs_btrfs_quota_rescan""" 4 .el .IP "\f(CWguestfs_btrfs_quota_rescan\fR" 4 .IX Item "guestfs_btrfs_quota_rescan" .PD Підтримка квот для файлових систем Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_rescue_chunk_recover""" 4 .el .IP "\f(CWguestfs_btrfs_rescue_chunk_recover\fR" 4 .IX Item "guestfs_btrfs_rescue_chunk_recover" Сканування і відновлення ієрархії фрагментів у файлових системах Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_rescue_super_recover""" 4 .el .IP "\f(CWguestfs_btrfs_rescue_super_recover\fR" 4 .IX Item "guestfs_btrfs_rescue_super_recover" Відновлення суперблоків у файлових системах Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_replace""" 4 .el .IP "\f(CWguestfs_btrfs_replace\fR" 4 .IX Item "guestfs_btrfs_replace" Заміна пристрою у файловій системі Btrfs (Cao Jin). .ie n .IP """guestfs_btrfs_scrub""" 4 .el .IP "\f(CWguestfs_btrfs_scrub\fR" 4 .IX Item "guestfs_btrfs_scrub" .PD 0 .ie n .IP """guestfs_btrfs_scrub_cancel""" 4 .el .IP "\f(CWguestfs_btrfs_scrub_cancel\fR" 4 .IX Item "guestfs_btrfs_scrub_cancel" .ie n .IP """guestfs_btrfs_scrub_resume""" 4 .el .IP "\f(CWguestfs_btrfs_scrub_resume\fR" 4 .IX Item "guestfs_btrfs_scrub_resume" .ie n .IP """guestfs_btrfs_scrub_status""" 4 .el .IP "\f(CWguestfs_btrfs_scrub_status\fR" 4 .IX Item "guestfs_btrfs_scrub_status" .PD Витирання файлової системи Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_subvolume_get_default""" 4 .el .IP "\f(CWguestfs_btrfs_subvolume_get_default\fR" 4 .IX Item "guestfs_btrfs_subvolume_get_default" Отримання типового підтому файлової системи Btrfs (Hu Tao). .ie n .IP """guestfs_btrfs_subvolume_show""" 4 .el .IP "\f(CWguestfs_btrfs_subvolume_show\fR" 4 .IX Item "guestfs_btrfs_subvolume_show" Виведення докладної інформації щодо підтому файлової системи Btrfs (Hu Tao). .ie n .IP """guestfs_btrfstune_enable_extended_inode_refs""" 4 .el .IP "\f(CWguestfs_btrfstune_enable_extended_inode_refs\fR" 4 .IX Item "guestfs_btrfstune_enable_extended_inode_refs" .PD 0 .ie n .IP """guestfs_btrfstune_enable_skinny_metadata_extent_refs""" 4 .el .IP "\f(CWguestfs_btrfstune_enable_skinny_metadata_extent_refs\fR" 4 .IX Item "guestfs_btrfstune_enable_skinny_metadata_extent_refs" .ie n .IP """guestfs_btrfstune_seeding""" 4 .el .IP "\f(CWguestfs_btrfstune_seeding\fR" 4 .IX Item "guestfs_btrfstune_seeding" .PD Різноманітні параметри налаштовування для файлових систем Btrfs (Chen Hanxiao). .ie n .IP """guestfs_c_pointer""" 4 .el .IP "\f(CWguestfs_c_pointer\fR" 4 .IX Item "guestfs_c_pointer" Повертає вказівник C на підлеглий \f(CW\*(C`guestfs_h *\*(C'\fR. Це надає змогу працювати спільно прив'язкам libguestfs та прив'язкам з інших бібліотек. Докладніше про це тут: https://bugzilla.redhat.com/1075164 .ie n .IP """guestfs_copy_in""" 4 .el .IP "\f(CWguestfs_copy_in\fR" 4 .IX Item "guestfs_copy_in" .PD 0 .ie n .IP """guestfs_copy_out""" 4 .el .IP "\f(CWguestfs_copy_out\fR" 4 .IX Item "guestfs_copy_out" .PD Гнучкі програмні інтерфейси для рекурсивного копіювання каталогів з файлами між основною і гостьовою файловими системами. Раніше цими можливостями можна було скористатися лише у командах guestfish, тепер же ними можуть користуватися будь\-які засоби, які використовуються програмний інтерфейс (Pino Toscano). .ie n .IP """guestfs_part_get_gpt_guid""" 4 .el .IP "\f(CWguestfs_part_get_gpt_guid\fR" 4 .IX Item "guestfs_part_get_gpt_guid" .PD 0 .ie n .IP """guestfs_part_set_gpt_guid""" 4 .el .IP "\f(CWguestfs_part_set_gpt_guid\fR" 4 .IX Item "guestfs_part_set_gpt_guid" .PD Отримання і встановлення \s-1GUID\s0 для окремих розділів \s-1GPT.\s0 .ie n .IP """guestfs_part_get_mbr_part_type""" 4 .el .IP "\f(CWguestfs_part_get_mbr_part_type\fR" 4 .IX Item "guestfs_part_get_mbr_part_type" Отримання типу розділу \s-1MBR\s0 (Chen Hanxiao). .ie n .IP """guestfs_set_uuid_random""" 4 .el .IP "\f(CWguestfs_set_uuid_random\fR" 4 .IX Item "guestfs_set_uuid_random" Встановлює для \s-1UUID\s0 файлової системи випадкове значення; підтримувані файлові системи у поточній версії — ext2/3/4, \s-1XFS,\s0 Btrfs та розділи swap (Chen Hanxiao). .PP \fIІнші зміни у програмному інтерфейсі\fR .IX Subsection "Інші зміни у програмному інтерфейсі" .PP \&\f(CW\*(C`guestfs_disk_create\*(C'\fR тепер може використовувати файли \s-1VMDK\s0 як файли резервної пам'яті. .PP \&\f(CW\*(C`guestfs_btrfs_subvolume_snapshot\*(C'\fR приймає додаткові необов'язкові параметри (усі додано Hu Tao): .ie n .IP """ro""" 4 .el .IP "\f(CWro\fR" 4 .IX Item "ro" для створення придатного лише для читання знімка Btrfs .ie n .IP """qgroupid""" 4 .el .IP "\f(CWqgroupid\fR" 4 .IX Item "qgroupid" для додавання знімка до qgroup .PP \&\f(CW\*(C`guestfs_btrfs_subvolume_create\*(C'\fR також може приймати необов'язковий параметр \f(CW\*(C`qgroupid\*(C'\fR (Hu Tao). .PP \&\f(CW\*(C`guestfs_set_uuid\*(C'\fR може встановлювати \s-1UUID\s0 розділів резервної пам'яті (swap), Btrfs (Hu Tao, Chen Hanxiao). .PP \&\f(CW\*(C`guestfs_copy_device_to_file\*(C'\fR і \f(CW\*(C`guestfs_copy_file_to_file\*(C'\fR мають новий необов'язковий параметр \f(CW\*(C`append\*(C'\fR, за допомогою якого ви можете дописувати дані до файла виведення, замість його заповнення від початку. .PP \&\f(CW\*(C`guestfs_mkfs\*(C'\fR має новий необов'язковий параметр \f(CW\*(C`label\*(C'\fR для встановлення початкової мітки нової файлової системи (Pino Toscano). .PP \&\f(CW\*(C`guestfs_set_label\*(C'\fR і \f(CW\*(C`guestfs_set_uuid\*(C'\fR тепер встановлюють \f(CW\*(C`ENOTSUP\*(C'\fR як номер помилки, якщо немає реалізованої підтримки файлової системи вказаного монтованого пристрою (Chen Hanxiao). .PP Змінні середовища тепер надають вам змогу написати \f(CW\*(C`LIBGUESTFS_DEBUG=true\*(C'\fR, \f(CW\*(C`LIBGUESTFS_DEBUG=0\*(C'\fR тощо. .PP Увесь програмний інтерфейс \f(CW\*(C`guestfs_sfdisk*\*(C'\fR визнано застарілим. Оскільки \fBsfdisk\fR\|(8) було переписано у несумісний спосіб у головній гілці розробки, ми не рекомендуємо використовувати ці програмні інтерфейси у новому коді. Користуйтеся його замінниками — \f(CW\*(C`guestfs_part*\*(C'\fR. .PP Програмні інтерфейси, зокрема \f(CW\*(C`guestfs_download\*(C'\fR, не обрізають \fI/dev/stdout\fR або \fI/dev/stderr\fR під час запису до них, тобто, якщо ви переспрямовуєте stdout або stderr до файла, файл більше не обрізається. .SS "Зміни у збиранні" .IX Subsection "Зміни у збиранні" Фонова служба більше не використовує власну окрему копію gnulib. Замість цього, вона спільно використовує єдину копію з бібліотекою. .PP Тепер автоматично створюються файли OCaml \fI.annot\fR, отже комплексні середовища для розробки та редактори, зокрема emacs і vi, можуть здійснювати навігацію типами OCaml у початковому коді програм. .PP Різноманітні виправлення з метою уможливити збирання на різних основних системах та за різних архітектур (Pino Toscano). .PP Тепер для збирання усіх програм OCaml безпосередньо використовується automake, замість ситуативних правил Makefile. Одним із побіжних ефектів цього є те, що тепер можна бачити попередження щодо усього коду C, який використовується програмами мовою OCaml. .PP Для збирання використано \f(CW\*(C`\-fno\-strict\-overflow\*(C'\fR, що уникнути неоднозначних оптимізацій з боку \s-1GCC.\s0 .PP Чищення коду з метою підтримки \s-1GCC 5.\s0 .PP Для виконання деяких тестів OCaml потрібна бібліотека OCaml OUnit2. .PP Знову має працювати створення статично скомпонованого \fIlibguestfs.a\fR. .PP Ми більше не використовуємо підкаталог \fIsrc/api\-support\fR і скрипти у ньому. Замість цього, дані зберігаються у \fIgenerator/actions.ml\fR, коли до libguestfs додається програмний інтерфейс. .SS "Інтернаціоналізація" .IX Subsection "Інтернаціоналізація" Службу перекладу змінено з Transifex на Zanata. .PP Виконано багато перекладів, інтерфейсу бібліотеки і програм та документації. .SS "Внутрішня частина роботи програми" .IX Subsection "Внутрішня частина роботи програми" У всіх інструментах мовою OCaml тепер є загальні функції \f(CW\*(C`error\*(C'\fR, \f(CW\*(C`warning\*(C'\fR, \f(CW\*(C`info\*(C'\fR та загальний спосіб встановити і отримати прапорці \fI\-\-quiet\fR, \fI\-x\fR (трасування) та \fI\-v\fR (докладний режим) і використовується однорідне підсвічування кольором. .PP Для спрощення конструкторів і деструкторів \s-1PCRE\s0 використовуються макроси \f(CW\*(C`COMPILE_REGEXP\*(C'\fR. .PP У генераторі нарешті реалізовано аргументи \f(CW\*(C`Pointer\*(C'\fR. .PP У внутрішніх ідентифікаторах більше не використовуються подвійні і потрійні підкреслювання (наприклад, \f(CW\*(C`guestfs_\|_\|_program_name\*(C'\fR). Такі ідентифікатори є некоректними у програмах C99 та \*(C+, хоча компілятори і можуть їх використовувати. .PP Фонова служба більше не обробляє параметри \f(CW\*(C`guestfs_*\*(C'\fR від \fI/proc/cmdline\fR. Замість цього, вона приймає лише звичайні параметри командного рядка. Скрипти ініціалізації базової системи перетворюють дані \fI/proc/cmdline\fR у параметри командного рядка фонової служби. .PP Тести тепер можуть запускати фонову службу як «полонений процес», що уможливлює її роботу безпосередньо у основній системі. Головною перевагою цього є те, що ви можемо запускати valgrind безпосередньо для фонової служби під час тестування. .SS "Виправлені вади" .IX Subsection "Виправлені вади" .IP "https://bugzilla.redhat.com/1239053" 4 .IX Item "https://bugzilla.redhat.com/1239053" virt\-v2v error reporting when grub.conf cannot be parsed by Augeas .IP "https://bugzilla.redhat.com/1238053" 4 .IX Item "https://bugzilla.redhat.com/1238053" v2v:Duplicate disk target set when convert guest with cdrom attached .IP "https://bugzilla.redhat.com/1237869" 4 .IX Item "https://bugzilla.redhat.com/1237869" Virtio drivers are not installed for windows 2008 guests by virt\-v2v .IP "https://bugzilla.redhat.com/1234351" 4 .IX Item "https://bugzilla.redhat.com/1234351" virt\-v2v Support for Fedora virtio-win drivers .IP "https://bugzilla.redhat.com/1232192" 4 .IX Item "https://bugzilla.redhat.com/1232192" Virt\-v2v gives an error on a blank disk: part_get_parttype: unknown signature, of the output: \s-1BYT\s0; .IP "https://bugzilla.redhat.com/1229385" 4 .IX Item "https://bugzilla.redhat.com/1229385" virt\-p2v in kernel command line mode should power off the machine after conversion .IP "https://bugzilla.redhat.com/1229340" 4 .IX Item "https://bugzilla.redhat.com/1229340" virt\-p2v no \s-1GUI\s0 mode appends \en to the final command line parameter .IP "https://bugzilla.redhat.com/1229305" 4 .IX Item "https://bugzilla.redhat.com/1229305" virt-sysprep at cleanup deletes /var/spool/at/.SEQ which results in failing at .IP "https://bugzilla.redhat.com/1226794" 4 .IX Item "https://bugzilla.redhat.com/1226794" \&\*(L"Doing conversion……\*(R" still shows after cancel the conversion from virt\-p2v client .IP "https://bugzilla.redhat.com/1215042" 4 .IX Item "https://bugzilla.redhat.com/1215042" Memory leak in virNetSocketNewConnectUNIX .IP "https://bugzilla.redhat.com/1213324" 4 .IX Item "https://bugzilla.redhat.com/1213324" virt\-v2v: warning: unknown guest operating system: windows windows 6.3 when converting win8,win8.1,win2012,win2012R2 to rhev .IP "https://bugzilla.redhat.com/1213247" 4 .IX Item "https://bugzilla.redhat.com/1213247" virt tools should print the same format of version string .IP "https://bugzilla.redhat.com/1212808" 4 .IX Item "https://bugzilla.redhat.com/1212808" \&\s-1RFE:\s0 virt-builder \-\-touch .IP "https://bugzilla.redhat.com/1212807" 4 .IX Item "https://bugzilla.redhat.com/1212807" virt-builder \-\-selinux\-relabel flag fails on cross-architecture builds .IP "https://bugzilla.redhat.com/1212680" 4 .IX Item "https://bugzilla.redhat.com/1212680" \&\s-1RFE:\s0 virt-inspector xpath query should output a neat format of the query element .IP "https://bugzilla.redhat.com/1212152" 4 .IX Item "https://bugzilla.redhat.com/1212152" virt-builder firstboot-command fails: File name too long .IP "https://bugzilla.redhat.com/1211996" 4 .IX Item "https://bugzilla.redhat.com/1211996" virt-inspector gives incorrect arch (ppc64) for ppc64le guest .IP "https://bugzilla.redhat.com/1203817" 4 .IX Item "https://bugzilla.redhat.com/1203817" \&\s-1RFE:\s0 virt-customize \-\-move and \-\-copy .IP "https://bugzilla.redhat.com/1201526" 4 .IX Item "https://bugzilla.redhat.com/1201526" index-parser can't parse systemd mount files properly .IP "https://bugzilla.redhat.com/1196101" 4 .IX Item "https://bugzilla.redhat.com/1196101" virt-builder \-\-upload option doesn't work to a \s-1FAT\s0 partition .IP "https://bugzilla.redhat.com/1196100" 4 .IX Item "https://bugzilla.redhat.com/1196100" virt-builder \-x option on its own does not enable tracing .IP "https://bugzilla.redhat.com/1195204" 4 .IX Item "https://bugzilla.redhat.com/1195204" `virt\-builder` should create \f(CW$HOME\fR/.cache directory if it already doesn't exist .IP "https://bugzilla.redhat.com/1193237" 4 .IX Item "https://bugzilla.redhat.com/1193237" Virt-builder fingerprint is required even when no check desired .IP "https://bugzilla.redhat.com/1189284" 4 .IX Item "https://bugzilla.redhat.com/1189284" virt-resize should preserve \s-1GPT\s0 partition UUIDs, else \s-1EFI\s0 guests become unbootable .IP "https://bugzilla.redhat.com/1188866" 4 .IX Item "https://bugzilla.redhat.com/1188866" Performance regression in virt-builder when uncompressing image .IP "https://bugzilla.redhat.com/1186800" 4 .IX Item "https://bugzilla.redhat.com/1186800" virt\-v2v should support gzip format ova as input .IP "https://bugzilla.redhat.com/1185561" 4 .IX Item "https://bugzilla.redhat.com/1185561" virt-sparsify should ignore read-only LVs .IP "https://bugzilla.redhat.com/1182463" 4 .IX Item "https://bugzilla.redhat.com/1182463" \&\*(L"mknod-b\*(R", \*(L"mknod-c\*(R", and \*(L"mkfifo\*(R" do not strip non-permissions bits from \*(L"mode\*(R" .IP "https://bugzilla.redhat.com/1176493" 4 .IX Item "https://bugzilla.redhat.com/1176493" virt\-v2v ignores sound device when convert xen guest to local kvm .IP "https://bugzilla.redhat.com/1175676" 4 .IX Item "https://bugzilla.redhat.com/1175676" Друкарська помилка у «help ping\-daemon» .IP "https://bugzilla.redhat.com/1175196" 4 .IX Item "https://bugzilla.redhat.com/1175196" \&\*(L"parse-environment\*(R" and \*(L"parse-environment-list\*(R" fail to parse \*(L"\s-1LIBGUESTFS_TRACE\s0 = 0\*(R" .IP "https://bugzilla.redhat.com/1175035" 4 .IX Item "https://bugzilla.redhat.com/1175035" \&\*(L"is\-blockdev\*(R"/\*(L"is\-blockdev\-opts\*(R" fail to detect \*(L"/dev/sda\*(R" .IP "https://bugzilla.redhat.com/1174280" 4 .IX Item "https://bugzilla.redhat.com/1174280" \&\s-1RFE:\s0 Allow v2v conversion of Oracle Linux 5.8 VMware \s-1VM\s0 .IP "https://bugzilla.redhat.com/1174200" 4 .IX Item "https://bugzilla.redhat.com/1174200" New virt\-v2v failure: \s-1CURL:\s0 Error opening file: \s-1NSS:\s0 client certificate not found (nickname not specified): Invalid argument .IP "https://bugzilla.redhat.com/1174123" 4 .IX Item "https://bugzilla.redhat.com/1174123" Graphics password disappear after conversion of virt\-v2v .IP "https://bugzilla.redhat.com/1174073" 4 .IX Item "https://bugzilla.redhat.com/1174073" The listen address for vnc is changed after conversion by virt\-v2v .IP "https://bugzilla.redhat.com/1171666" 4 .IX Item "https://bugzilla.redhat.com/1171666" Засіб інспектування вважає розділ \s-1EFI\s0 окремою операційною системою .IP "https://bugzilla.redhat.com/1171130" 4 .IX Item "https://bugzilla.redhat.com/1171130" virt\-v2v conversion of \s-1RHEL 3\s0 guest fails with: All of your loopback devices are in use .IP "https://bugzilla.redhat.com/1170685" 4 .IX Item "https://bugzilla.redhat.com/1170685" Conversion of \s-1RHEL 4\s0 guest fails: rpm \-ql 1:kernel\-utils\-2.4\-23.el4: virt\-v2v: error: libguestfs error: command_lines: .IP "https://bugzilla.redhat.com/1170073" 4 .IX Item "https://bugzilla.redhat.com/1170073" virt\-v2v picks debug kernels over non-debug kernels when versions are equal .IP "https://bugzilla.redhat.com/1169045" 4 .IX Item "https://bugzilla.redhat.com/1169045" virt-sparsify: libguestfs error: qemu-img info: 'virtual\-size' is not representable as a 64 bit integer .IP "https://bugzilla.redhat.com/1169015" 4 .IX Item "https://bugzilla.redhat.com/1169015" virt-resize \-\-expand fails on ubuntu\-14.04.img image (regression) .IP "https://bugzilla.redhat.com/1168144" 4 .IX Item "https://bugzilla.redhat.com/1168144" warning: fstrim: fstrim: /sysroot/: \s-1FITRIM\s0 ioctl failed: Operation not supported (ignored) when convert win2003 guest from xen server .IP "https://bugzilla.redhat.com/1167921" 4 .IX Item "https://bugzilla.redhat.com/1167921" p2v: No Network Connection dialog .IP "https://bugzilla.redhat.com/1167774" 4 .IX Item "https://bugzilla.redhat.com/1167774" virt\-p2v fails with error:\*(L"nbd.\fBc:nbd_receive_negotiate()\fR:L501: read failed\*(R" .IP "https://bugzilla.redhat.com/1167623" 4 .IX Item "https://bugzilla.redhat.com/1167623" Remove \*(L"If reporting bugs, run virt\-v2v with debugging enabled ..\*(R" message when running virt\-p2v .IP "https://bugzilla.redhat.com/1167601" 4 .IX Item "https://bugzilla.redhat.com/1167601" \&\*(L"Conversion was successful\*(R" pop out even virt\-p2v fails .IP "https://bugzilla.redhat.com/1167302" 4 .IX Item "https://bugzilla.redhat.com/1167302" virt\-v2v: warning: ova hard disk has no parent controller when convert from a ova file .IP "https://bugzilla.redhat.com/1166618" 4 .IX Item "https://bugzilla.redhat.com/1166618" virt-resize should give out the detail warning info to let customers know what's going wrong .IP "https://bugzilla.redhat.com/1165975" 4 .IX Item "https://bugzilla.redhat.com/1165975" File \*(L"/boot/grub2/device.map\*(R" showing is not right after converting a rhel7 guest from esx server .IP "https://bugzilla.redhat.com/1165785" 4 .IX Item "https://bugzilla.redhat.com/1165785" mount-loop command fails: mount failed: Unknown error \-1 .IP "https://bugzilla.redhat.com/1165569" 4 .IX Item "https://bugzilla.redhat.com/1165569" Disable \*(L"cancel conversion\*(R" button after virt\-p2v conversion finished .IP "https://bugzilla.redhat.com/1165564" 4 .IX Item "https://bugzilla.redhat.com/1165564" Provide Reboot/Shutdown button after virt\-p2v .IP "https://bugzilla.redhat.com/1164853" 4 .IX Item "https://bugzilla.redhat.com/1164853" Booting in qemu found no volume groups and failed checking the filesystems .IP "https://bugzilla.redhat.com/1164732" 4 .IX Item "https://bugzilla.redhat.com/1164732" The description of 'help append' is not accurately, it add the kernel options to libguestfs appliance not the guest kernel .IP "https://bugzilla.redhat.com/1164697" 4 .IX Item "https://bugzilla.redhat.com/1164697" Друкарські помилки у сторінках man .IP "https://bugzilla.redhat.com/1164619" 4 .IX Item "https://bugzilla.redhat.com/1164619" Inspect-get-icon failed on \s-1RHEL7\s0 guest .IP "https://bugzilla.redhat.com/1162966" 4 .IX Item "https://bugzilla.redhat.com/1162966" xfs should also give a warning out to let customer know the limitation .IP "https://bugzilla.redhat.com/1161575" 4 .IX Item "https://bugzilla.redhat.com/1161575" Failed to import guest with \*(L"rtl8139\*(R" nic to openstack server after converted by v2v .IP "https://bugzilla.redhat.com/1159651" 4 .IX Item "https://bugzilla.redhat.com/1159651" virt-sysprep firstboot script is not deleted if it reboot a \s-1RHEL 7\s0 guest .IP "https://bugzilla.redhat.com/1159258" 4 .IX Item "https://bugzilla.redhat.com/1159258" esx win2008 32 bit guest fail to load after conversion because the firmware isn't \s-1ACPI\s0 compatible .IP "https://bugzilla.redhat.com/1159016" 4 .IX Item "https://bugzilla.redhat.com/1159016" libvirt backend does not set \s-1RBD\s0 password .IP "https://bugzilla.redhat.com/1158526" 4 .IX Item "https://bugzilla.redhat.com/1158526" Use password file instead of process interaction .IP "https://bugzilla.redhat.com/1157679" 4 .IX Item "https://bugzilla.redhat.com/1157679" virt\-p2v\-make\-disk should add firmwares .IP "https://bugzilla.redhat.com/1156449" 4 .IX Item "https://bugzilla.redhat.com/1156449" libguestfs \s-1FTBFS\s0 on f21 ppc64le .IP "https://bugzilla.redhat.com/1156301" 4 .IX Item "https://bugzilla.redhat.com/1156301" virt-inspector support adding a remote disk, but in its man page \-a \s-1URI /\s0 \-\-add \s-1URI\s0 is missing .IP "https://bugzilla.redhat.com/1155121" 4 .IX Item "https://bugzilla.redhat.com/1155121" Virt\-v2v will fail when using relative path for \-i ova .IP "https://bugzilla.redhat.com/1153844" 4 .IX Item "https://bugzilla.redhat.com/1153844" Redundancy whitespace at the end of directory name when use <\s-1TAB\s0> to complete the directory name in guestfish with a xfs filesystem in guest .IP "https://bugzilla.redhat.com/1153589" 4 .IX Item "https://bugzilla.redhat.com/1153589" virt\-v2v will hang when converting esx guest before disk copy phase .IP "https://bugzilla.redhat.com/1152998" 4 .IX Item "https://bugzilla.redhat.com/1152998" virt\-v2v / qemu-img fails on ova image .IP "https://bugzilla.redhat.com/1151910" 4 .IX Item "https://bugzilla.redhat.com/1151910" virt-ls should remove '/' in the output when specify the directory name as /etc/ .IP "https://bugzilla.redhat.com/1151900" 4 .IX Item "https://bugzilla.redhat.com/1151900" Should also add a field for directory files when run virt-ls with \-\-csv option .IP "https://bugzilla.redhat.com/1151033" 4 .IX Item "https://bugzilla.redhat.com/1151033" virt\-v2v conversions from VMware vCenter server run slowly .IP "https://bugzilla.redhat.com/1146832" 4 .IX Item "https://bugzilla.redhat.com/1146832" virt\-v2v fail to convert guest with disk type volume .IP "https://bugzilla.redhat.com/1146007" 4 .IX Item "https://bugzilla.redhat.com/1146007" Input/output error during conversion of esx guest. .IP "https://bugzilla.redhat.com/1135585" 4 .IX Item "https://bugzilla.redhat.com/1135585" [\s-1RFE\s0] virt-builder should support copying in a directory/list of files .IP "https://bugzilla.redhat.com/1089566" 4 .IX Item "https://bugzilla.redhat.com/1089566" [abrt] livecd-tools: kickstart.py:276:apply:IOError: [Errno 2] No such file or directory: '/run/media/jones/2tp001data/createlive/temp/imgcreate\-_dX8Us/install_root/etc/rpm/macros.imgcreate' .IP "https://bugzilla.redhat.com/1079625" 4 .IX Item "https://bugzilla.redhat.com/1079625" virt-sparsify fails if a btrfs filesystem contains readonly snapshots .IP "https://bugzilla.redhat.com/1075164" 4 .IX Item "https://bugzilla.redhat.com/1075164" \&\s-1RFE:\s0 allow passing in a pre-opened libvirt connection from python .IP "https://bugzilla.redhat.com/912499" 4 .IX Item "https://bugzilla.redhat.com/912499" Security context on image file gets reset .IP "https://bugzilla.redhat.com/889082" 4 .IX Item "https://bugzilla.redhat.com/889082" [\s-1RFE\s0] virt\-v2v should check whether guest with same name exist on target first then transfer the disk .IP "https://bugzilla.redhat.com/855059" 4 .IX Item "https://bugzilla.redhat.com/855059" \&\s-1RFE:\s0 virt\-p2v: display more information about network devices such as topology, bonding, etc. .IP "https://bugzilla.redhat.com/823758" 4 .IX Item "https://bugzilla.redhat.com/823758" p2v client should have largest number restrictions for \s-1CPU\s0 and Memory settings .IP "https://bugzilla.redhat.com/709327" 4 .IX Item "https://bugzilla.redhat.com/709327" hivex cannot read registry hives from ReactOS .IP "https://bugzilla.redhat.com/709326" 4 .IX Item "https://bugzilla.redhat.com/709326" virt-inspector cannot detect ReactOS .IP "https://bugzilla.redhat.com/119673" 4 .IX Item "https://bugzilla.redhat.com/119673" installation via \s-1NFS\s0 doesn't seem to work .SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ" .IX Header "ТАКОЖ ПЕРЕГЛЯНЬТЕ" \&\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 "АВТОР" .IX Header "АВТОР" Richard W.M. Jones .SH "АВТОРСЬКІ ПРАВА" .IX Header "АВТОРСЬКІ ПРАВА" Copyright (C) 2009\-2023 Red Hat Inc. .SH "LICENSE" .IX Header "LICENSE" .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.