guestfs-release-notes-1.30(1) | Virtualization Support | guestfs-release-notes-1.30(1) |
guestfs-release-notes - нотатки щодо випусків libguestfs
Ці нотатки щодо випуску стосуються лише відмінностей від попереднього стабільного випуску (1.28.0). Докладний журнал змін є частиною журналу змін сховища git. Його також наведено у файлі ChangeLog, який є частиною архіву tar із кодом бібліотеки.
Нові інструменти
virt-dib(1) є безпечною і захищеною альтернативою до програми «diskimage-builder» з OpenStack. Вона сумісна із елементами diskimage-builder. (Pino Toscano)
virt-get-kernel(1) видобуває ядро і диск у пам'яті з образу диска. Раніше ця функціональна можливість була частиною virt-builder(1), але нова програм є ширшою за можливостями. (Pino Toscano)
Нові можливості у наявних інструментах
У режимі virt-v2v(1) -i ova програма тепер здатна читати ширший діапазон файлів OVA, а також незапаковані файли (каталоги).
virt-v2v тепер безпечно передає параметри до curl, отже, паролі, куки та інші дані будуть недоступними для перегляду іншими користувачами із доступом до командної оболонки та комп'ютері основної системи.
У virt-v2v передбачено новий параметр --password-file, який надає вам змогу безпечно передати пароль і уникнути роботи із інтерактивним рядком запиту.
virt-v2v вимикає автоматичне перезавантаження Windows, щоб робить діагностику помилок при перетворенні Windows простішою.
virt-v2v тепер постачається із широким зовнішнім комплектом для тестування. Див. virt-v2v-test-harness(1).
virt-v2v надає змогу використовувати драйвери virtio з будь-якого місця (Roman Kagan), драйвери тепер може бути прочитано безпосередньо з образу ISO virtio.
У virt-v2v передбачено перетворення Windows ≥ 8. Зауважте, що ця можливість є експериментальною. Користуйтеся нею обережно.
virt-v2v тепер може перетворювати гостьові системи з UEFI.
До virt-p2v(1) додано діалог налаштовування мережі.
virt-p2v тепер має перемикачі "p2v.pre", "p2v.post" і "p2v.fail", які уможливлюють довільні скрипти для приготування перетворення і коригування після перетворення.
У virt-p2v тепер використовується досконаліший засіб керування вікнами metacity (замість matchbox).
virt-sysprep(1) тепер вилучає "/var/spool/mail/ім'я_користувача" для облікових записів, відмінних від root (Hu Tao).
virt-customize(1), virt-builder(1) і virt-sysprep тепер мають такі нові параметри:
Поліпшення у підтримці firstboot у virt-customize. Зокрема у Windows firstboot має працювати як і у Linux (Roman Kagan).
virt-df(1) тепер може використовувати PolicyKit, SASL та інші способи розпізнавання при отриманні списку доменів від libvirt.
Поліпшення у доповненні команд guestfish у bash (Pino Toscano).
Засіб доповнення команд у bash тепер доповнює і скорочені форми запису параметрів, і повні (Pino Toscano).
guestfish(1) тепер показує короткий опис команди, якщо через командний рядок передається помилкова кількість параметрів (Hu Tao).
У virt-builder тепер передбачено підтримку Red Hat Enterprise Linux версій, ах до RHEL 3.
У virt-builder передбачено підтримку гостьових систем SUSE, де використовується zypper (Cédric Bosdonnat).
Прив’язки до мов програмування
До прив'язок до Java тепер включено перевірені Javadoc, інші поліпшення (Pino Toscano).
Декілька виправлень і поліпшень у прив'язках до PHP (Pino Toscano).
Перевірка
Засіб інспектування тепер може отримувати піктограми з RHEL 7 та CentOS 7.
/etc/favicon.png тепер може бути символічним посиланням.
У заснованих на RPM гостьових системах засіб інспектування тепер повертає поля Epoch RPM.
Пакунки Debian тепер мають окремі поля Epoch і Version (Nikos Skalkotos).
Додано виявлення OpenBSD, FreeBSD і NetBSD додано як окремі дистрибутиви, інші поліпшення у інспектуванні BSD та виправлення вад (Nikos Skalkotos).
Додано виявлення CoreOS (Nikos Skalkotos).
Засобом керування пакунками у Fedora ≥ 22 є "dnf".
Тепер можна інспектувати гостьові системи ReactOS (Maros Zatko).
Додано підтримку гостьових систем UEFI.
Інспектування тепер працює, якщо модулі ядра стиснуто за допомогою gzip або xz (Pino Toscano).
Засіб інспектування тепер розпізнає гостьові системи ppc64 і ppc64le (Maros Zatko).
Засіб інспектування тепер може показувати списки встановлених програм у гостьових системах Archlinux (Nikos Skalkotos).
Архітектури і платформи
Тепер підтримка архітектур PPC64 (POWER7) і PPC64LE (POWER8) є набагато ліпшою і має працювати без додаткових налаштовувань.
Для aarch64 ми використовуємо AAVMF (реалізацію UEFI з відкритим кодом на основі OVMF), якщо вона доступна, для запуску базової системи.
Для armv7 ми тепер використовуємо типово тип комп'ютера -M virt.
Реалізовано кращу підтримку збирання на платформах, відмінних від Linux (Pino Toscano, Margaret Lewicka).
Тепер libguestfs має працювати на 32-бітових MIPS з прямим порядком байтів ("mipsel"). Не вдалося перевірити 64-бітову версію або версію зі зворотним порядком байтів.
Щоб дізнатися більше, ознайомтеся із внеском https://github.com/libguestfs/libguestfs/commit/6c6ce85f94c36803fe2db35a98db436bff0c14b0
До libguestfs було внесено зміни щодо обмеження споживання ресурсів за об'ємом і часом, які стосуються "qemu-img info" і усувають вказану проблему. Якщо зловмисник спробує передати один зі спеціально створених образів диска libguestfs, "qemu-img" завершить роботу в аварійному режимі і поверне керування libguestfs, надавши дані щодо аварії як повідомлення про помилку.
Нові програмні інтерфейси
Інші зміни у програмному інтерфейсі
"guestfs_disk_create" тепер може використовувати файли VMDK як файли резервної пам'яті.
"guestfs_btrfs_subvolume_snapshot" приймає додаткові необов'язкові параметри (усі додано Hu Tao):
"guestfs_btrfs_subvolume_create" також може приймати необов'язковий параметр "qgroupid" (Hu Tao).
"guestfs_set_uuid" може встановлювати UUID розділів резервної пам'яті (swap), Btrfs (Hu Tao, Chen Hanxiao).
"guestfs_copy_device_to_file" і "guestfs_copy_file_to_file" мають новий необов'язковий параметр "append", за допомогою якого ви можете дописувати дані до файла виведення, замість його заповнення від початку.
"guestfs_mkfs" має новий необов'язковий параметр "label" для встановлення початкової мітки нової файлової системи (Pino Toscano).
"guestfs_set_label" і "guestfs_set_uuid" тепер встановлюють "ENOTSUP" як номер помилки, якщо немає реалізованої підтримки файлової системи вказаного монтованого пристрою (Chen Hanxiao).
Змінні середовища тепер надають вам змогу написати "LIBGUESTFS_DEBUG=true", "LIBGUESTFS_DEBUG=0" тощо.
Увесь програмний інтерфейс "guestfs_sfdisk*" визнано застарілим. Оскільки sfdisk(8) було переписано у несумісний спосіб у головній гілці розробки, ми не рекомендуємо використовувати ці програмні інтерфейси у новому коді. Користуйтеся його замінниками — "guestfs_part*".
Програмні інтерфейси, зокрема "guestfs_download", не обрізають /dev/stdout або /dev/stderr під час запису до них, тобто, якщо ви переспрямовуєте stdout або stderr до файла, файл більше не обрізається.
Фонова служба більше не використовує власну окрему копію gnulib. Замість цього, вона спільно використовує єдину копію з бібліотекою.
Тепер автоматично створюються файли OCaml .annot, отже комплексні середовища для розробки та редактори, зокрема emacs і vi, можуть здійснювати навігацію типами OCaml у початковому коді програм.
Різноманітні виправлення з метою уможливити збирання на різних основних системах та за різних архітектур (Pino Toscano).
Тепер для збирання усіх програм OCaml безпосередньо використовується automake, замість ситуативних правил Makefile. Одним із побіжних ефектів цього є те, що тепер можна бачити попередження щодо усього коду C, який використовується програмами мовою OCaml.
Для збирання використано "-fno-strict-overflow", що уникнути неоднозначних оптимізацій з боку GCC.
Чищення коду з метою підтримки GCC 5.
Для виконання деяких тестів OCaml потрібна бібліотека OCaml OUnit2.
Знову має працювати створення статично скомпонованого libguestfs.a.
Ми більше не використовуємо підкаталог src/api-support і скрипти у ньому. Замість цього, дані зберігаються у generator/actions.ml, коли до libguestfs додається програмний інтерфейс.
Службу перекладу змінено з Transifex на Zanata.
Виконано багато перекладів, інтерфейсу бібліотеки і програм та документації.
У всіх інструментах мовою OCaml тепер є загальні функції "error", "warning", "info" та загальний спосіб встановити і отримати прапорці --quiet, -x (трасування) та -v (докладний режим) і використовується однорідне підсвічування кольором.
Для спрощення конструкторів і деструкторів PCRE використовуються макроси "COMPILE_REGEXP".
У генераторі нарешті реалізовано аргументи "Pointer".
У внутрішніх ідентифікаторах більше не використовуються подвійні і потрійні підкреслювання (наприклад, "guestfs___program_name"). Такі ідентифікатори є некоректними у програмах C99 та C++, хоча компілятори і можуть їх використовувати.
Фонова служба більше не обробляє параметри "guestfs_*" від /proc/cmdline. Замість цього, вона приймає лише звичайні параметри командного рядка. Скрипти ініціалізації базової системи перетворюють дані /proc/cmdline у параметри командного рядка фонової служби.
Тести тепер можуть запускати фонову службу як «полонений процес», що уможливлює її роботу безпосередньо у основній системі. Головною перевагою цього є те, що ви можемо запускати valgrind безпосередньо для фонової служби під час тестування.
guestfs-examples(1), guestfs-faq(1), guestfs-performance(1), guestfs-recipes(1), guestfs-testing(1), guestfs(3), guestfish(1), http://libguestfs.org/
Richard W.M. Jones
Copyright (C) 2009-2020 Red Hat Inc.
To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
When reporting a bug, please supply:
2021-01-05 | libguestfs-1.44.0 |