Amazon Best VPN GoSearch

Значок OnWorks

guestfs-release-notes - Интернет в облаке

Запускайте guestfs-release-notes в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

Это команда guestfs-release-notes, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


guestfs-release-notes - примечания к выпуску libguestfs

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.32


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.30.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Новое инструменты

Новый virt-v2v-копировать-на-местный(1) инструмент является вспомогательным инструментом для вирт-v2v(1) позволяя вам
для преобразования исходных гостей, к которым virt-v2v не может получить доступ напрямую.

Новое функции in существующий инструменты

Virt-customize знает, как записать случайное начальное число в CirrOS (Pino Toscano).

В Fedora запускается virt-customize д.н.ф.(8) с --Лучший флаг, гарантируя, что он всегда обновляется до
последние доступные пакеты.

Virt-builder теперь предоставляет 32-битные шаблоны Fedora.

Virt-builder и virt-customize --установить опция теперь работает на 32-битных гостевых системах Fedora.
Раньше он пытался установить 64-битные пакеты (Ян Седлак).

Virt-builder теперь может получать образы облаков с помощью метаданных Simple Streams v1.0 (Pino Toscano).

Virt-builder теперь может извлекать образы облака openSUSE прямо из коробки (Седрик Босдоннат).

Virt-customize теперь будет использовать более надежные (SHA-512) зашифрованные пароли по умолчанию в openSUSE.
≥ 11 (Пино Тоскано).

Virt-builder теперь корректно обрабатывает имена выходных файлов, содержащие символы двоеточия (":"),
и создаст временные файлы в каталоге кеша libguestfs вместо значения по умолчанию
/ Tmp (Пино Тоскано).

В Virt-resize появился новый --неизвестные файловые системы возможность контролировать, что делать, когда его просят
изменить размер файловой системы, размер которой libguestfs не знает.

Virt-v2v теперь имеет --на месте флаг / режим, позволяющий преобразовывать гостей на месте (римский
Каган).

Virt-v2v имеет - сжатый возможность создания сжатых выходных файлов qcow2.

Virt-v2v теперь может правильно получить путь к центру обработки данных VMware (dcPath) из libvirt, вместо этого
о необходимости вычислять его с помощью алгоритма, который иногда получал неправильный ответ
(Матиас Болте, Тинтин Чжэн).

Virt-v2v теперь правильно обрабатывает размеры ОЗУ для 64-битных гостей при работе на 32-битной системе.
хост.

Язык переплеты

В программах Perl и Python API "get_program_name" теперь возвращает истинное имя программы,
вместо неправильной строки «perl» или «python».

Привязки Python теперь могут быть скомпилированы для другой версии libguestfs,
возможность сборки модуля pip для любой версии libguestfs (вместо
требуется, чтобы у модуля pip и libguestfs была одна и та же версия).

Улучшено качество Ruby rdoc (документация) (Pino Toscano).

Сценарии Perl больше не жестко кодируют расположение perl в строке shebang, а используют окр(1)
вместо этого найти его (Пино Тоскано).

В программах OCaml дескриптор guestfs был неправильно преобразован в глобальный корень, то есть
никогда не могло быть собрано мусором. Если вы не вызывали функцию "закрыть" явно,
дескриптор не будет закрыт, пока не завершится вся программа. Теперь это было исправлено, поэтому
дескрипторы будут собираться мусором обычным способом. Это меняет API OCaml
функция "Guestfs.event_callback". Обратите внимание, что привязки языков, отличных от C, не покрываются
гарантия API / ABI libguestfs, хотя мы очень стараемся не менять их, но в этом
случае это было необходимо для исправления этой очень серьезной ошибки.

Инспекция

Alpine Linux и диспетчер пакетов APK, ALT Linux, Frugalware и PLD Linux теперь доступны.
узнал (Пино Тоскано).

Если он существует, / etc / os-release будет предпочтительнее для проверки гостей Linux (Pino
Тоскано).

Правильная версия ядра возвращается для гостей Windows ≥ 10.

Документация

Большой гость(3) справочная страница разделена на несколько отдельных справочных страниц:
Guestfs-взлом(1) guestfs-внутренние(1) Guestfs-безопасность(1). В дереве исходных текстов новый
Документы каталог содержит эту документацию.

Архитектуры и Платформы

Libguestfs теперь поддерживает 64-битные платформы ARM с vGICv3.

Безопасность.
Смотрите также Guestfs-безопасность(1).

"CVE-2015-5745"
https://bugzilla.redhat.com/1251157

Это не уязвимость в libguestfs, а потому, что мы всегда указываем virtio-serial
порт для каждого гостя (так как именно так происходит общение между гостем и хостом), эскалация
от устройства к хосту возможен процесс qemu. Это может повлиять на вас, если:

· Ваша программа libguestfs запускает ненадежные программы из гостевой системы (используя
"guestfs_sh" и т. д.) или

· Другой эксплойт был обнаружен (например) в коде файловой системы ядра, который позволял
искаженная файловая система, чтобы взять на себя управление устройством.

Если вы используете sVirt для ограничения qemu, это предотвратит некоторые атаки.

Виртуальные настройки разрешений на .ssh, .ssh / authorized_keys
https://bugzilla.redhat.com/1260778.

Раньше, когда вас просили ввести SSH-ключ в гостя, virt-customize (следовательно, virt-
строитель) создаст .ssh каталог и .ssh / authorized_keys файл тоже
широкие разрешения, позволяющие другим пользователям читать. Теперь они созданы как 0700 и
0600 соответственно, что совпадает с ssh-копия-идентификатор(1) полезность.

API
Новое API

"guestfs_get_identifier"
"guestfs_set_identifier"
Получить / установить идентификатор для каждого дескриптора. Основным результатом этого является изменение вывода трассировки.
из:

libguestfs: трассировка: foo

чтобы:

libguestfs: трассировка: ID: foo

упрощая отслеживание трассировок в многопоточных программах или в тех случаях, когда программа использует
несколько дескрипторов (особенно virt-v2v).

"guestfs_vfs_minimum_size"
Возвращает минимальный размер файловой системы (при сжатии). Это поддерживает ext2 / 3/4, XFS
и btrfs, а в будущем может поддерживать другие типы файловых систем (Максим Переведенцев).

Другое API изменения

"guestfs_disk_create": добавить "preallocation" = "off" / "metadata" / "full".
Для raw это позволяет использовать слово «off» как синоним слова «sparse» (что согласуется с
qcow2). Для qcow2 это позволяет использовать «sparse» в качестве синонима «off».

Он также добавляет "полный", что соответствует полностью выделенному, но использует posix_fallocate(3)
для эффективности.

"guestfs_tar_in": новые параметры "xattrs", "selinux", "acl".
"guestfs_tar_out": новые параметры "xattrs", "selinux", "acl".
Эти дополнительные параметры определяют, будут ли расширенные атрибуты, контексты SELinux и / или
ACL POSIX восстанавливаются / сохраняются в архивы.

"guestfs_add_drive"
Существующие параметры "имя пользователя" и "секрет" могут использоваться для аутентификации.
для iSCSI (Pino Toscano).

Построить изменения
Параметр "./configure --enable-valgrind-daemon" был удален.

Вы больше не можете собирать libguestfs на машинах RHEL 5-й эры (c.2007). См. "Oldlinux"
ветвь, если вам нужна (ограниченная) поддержка RHEL 5.

Virt-p2v теперь может быть собран на дистрибутивах Linux эпохи RHEL 6 (c.2010).

OCaml ≥ 3.11 (выпущен в 2008 г.) теперь требуется для сборки из git.

Для построения привязок Perl теперь требуется "Module :: Build" (вместо
"ExtUtils :: MakeMaker").

Сборка должна быть быстрее (особенно при постепенной перестройке), потому что работа была сделана
чтобы сократить время сборки.

И OCaml, и модуль OCaml findlib необходимы, если вам нужно запустить генератор в
время сборки. Раньше сборка завершалась неудачей, если бы findlib не был установлен.

Тесты "make check" теперь выполняются параллельно (в каждом каталоге тестов).

"make install" больше не устанавливает OCaml bindtests. * файлы неправильно.

"make install" теперь можно запустить дважды. Раньше при втором прогоне не получалось.

Команда make clean теперь должна удалить почти все файлы, создаваемые командой make.

Было добавлено новое правило "make installcheck", разрешающее установленную копию libguestfs.
для тестирования.

Внутренности
Некоторые усилия были приложены к тому, чтобы минимизировать размер устройства, что сокращает временные
дисковое пространство и время, необходимые для работы с libguestfs.

Теперь устройство передает имя сетевой карты в dhcpd, устраняя зависания при запуске устройства на
некоторые дистрибутивы (Cédric Bosdonnat).

OCaml "Guestfs.Errno" теперь сгенерирован (Pino Toscano).

В инструментах OCaml общий код теперь обрабатывает --debug-gc, --подробный и другие распространенные варианты
(Роман Каган, Пино Тоскано).

Тестовая программа virt-v2v позволяет нам загружать тестовых гостей в фиксированные даты в прошлом,
гарантия того, что повторная активация Windows не сработает.

Появился новый внутренний API для чтения / записи подпроцесса через канал из библиотечного кода.

Использовал программу "deheader" для удаления неиспользуемых директив "#include".

В инструментах OCaml модули «Char» и «String» теперь неявно ссылаются на
Модули Common_utils.Char и Common_utils.String (вместо модулей из stdlib).
Модули "Common_utils" содержат ряд дополнительных служебных функций char / string, а также
также скрыть некоторые небезопасные функции в stdlib.

Теперь будет запущено еще много тестов virt-v2v, даже если у вас нет rhsrvany и virtio-win.
установлен (Роман Каган).

Огромный настроить.ac файл был разделен на несколько файлов меньшего размера, называемых
m4 / guestfs _ *. m4.

Старые тесты / данные и тесты / гости каталоги были перемещены в тестовые данные /, Этот новый
Каталог верхнего уровня содержит все тестовые данные, которые являются общими, большими и / или разделяются между
несколько тестов.

Появился новый верхний уровень Веб-сайт/ каталог, содержащий общедоступные http://libguestfs.org
веб-сайт (или большую его часть).

Нечеткое тестирование инспекции (тесты / пух) был удален.

Virt-p2v теперь сохраняет вывод dmesg исходной физической машины на сервер преобразования.
каталог отладки, что упрощает отладку случаев отсутствия драйверов, прошивки и т. д.

ошибки фиксированной
https://bugzilla.redhat.com/1294956
set-label возвращает неверное сообщение об ошибке при установке метки файловой системы ext3 / ext4

https://bugzilla.redhat.com/1288733
Добавьте 23-битный базовый образ Fedora 32 для virt-builder

https://bugzilla.redhat.com/1288201
virt-builder записывает временные файлы в / Tmp

https://bugzilla.redhat.com/1285847
virt-resize не копирует логические разделы

https://bugzilla.redhat.com/1281578
virt-Inspector возвращает версию 6.3 для изображений win10 (должен возвращать 10.0)

https://bugzilla.redhat.com/1281577
virt-Inspector --xpath segfault при получении атрибута

https://bugzilla.redhat.com/1280029
libguestfs может запускать команды с закрытым stdin (или, что еще хуже, подключенным к
произвольно выбранные гостем случайные устройства)

https://bugzilla.redhat.com/1279273
О варианте сжатия для qcow2

https://bugzilla.redhat.com/1278878
guestfish должен уметь обрабатывать тонкие макеты LVM

https://bugzilla.redhat.com/1278382
Ошибка программирования Python DNF при запуске из virt-builder

https://bugzilla.redhat.com/1278371
проверка возвращает arch = "unknown" для гостевой системы Windows, если команда file не установлена

https://bugzilla.redhat.com/1277274
Разрешения на документы, необходимые для пользователей без прав администратора для использования virt-v2v

https://bugzilla.redhat.com/1277122
RFE: virt-sparsify: make '--in-place' sparsification safe to abort (изящно или
некрасиво)

https://bugzilla.redhat.com/1277074
Клиент Virt-p2v не должен предоставлять параметр vdsm, потому что его нельзя использовать

https://bugzilla.redhat.com/1276540
virt-v2v не может преобразовать необработанный образ Windows: ошибка «имя устройства не является разделом»

https://bugzilla.redhat.com/1275806
virt-builder: error: [файл] не является обычным файлом в гостевой системе

https://bugzilla.redhat.com/1270011
Тест Simplestreams не проходит: virt-builder: error: значение ключа size не является
целое

https://bugzilla.redhat.com/1267032
Команда копирования в guestfish ведет себя странно / неожиданно с подстановочными знаками

https://bugzilla.redhat.com/1262983
python: невозможно скомпилировать модуль pip, если установлен libguestfs! = версия pip guestfs

https://bugzilla.redhat.com/1262127
Лучшее диагностическое сообщение, когда virbr0 не существует

https://bugzilla.redhat.com/1261436
При преобразовании гостевой системы Win7 с установленным AVG AntiVirus предупреждения не отображаются

https://bugzilla.redhat.com/1260778
virt-builder --ssh-inject не устанавливает надлежащие разрешения для созданных файлов

https://bugzilla.redhat.com/1260689
RFE: V2V для проверки и предупреждения пользователя об отключении групповой политики и антивируса в Windows
Гости

https://bugzilla.redhat.com/1260590
Неверный графический протокол и тип видео установлены для гостя после преобразования в rhev 3.6 пользователем
вирт-v2v

https://bugzilla.redhat.com/1258342
лишние косые черты в URL vcenter сбивают с толку virt-v2v

https://bugzilla.redhat.com/1257895
[RHEV] [V2V] virt-v2v игнорирует NIC, если интерфейс source / @ network или source / @ bridge является
пустой строки

https://bugzilla.redhat.com/1256405
Созданный virt-builder образ диска Fedora 22 32bit не может быть обновлен

https://bugzilla.redhat.com/1256222
virt-p2v без режима графического интерфейса: ошибка при открытии управляющего соединения с $ ip: 22: неожиданно… rompt

https://bugzilla.redhat.com/1251909
Параметр -oa preallocated -of qcow2 в virt-v2v не работал эффективно

https://bugzilla.redhat.com/1250715
v2v: пробелы должны быть экранированы как% 20 в путях

https://bugzilla.redhat.com/1248678
Закройте все входящие порты на virt-p2v ISO

https://bugzilla.redhat.com/1246882
man virt-customize показывает синопсис дважды

https://bugzilla.redhat.com/1242853
mount-loop не удалось настроить устройство цикла: нет такого файла или каталога

https://bugzilla.redhat.com/1237136
ОШИБКА: невозможно обработать разыменование нулевого указателя ядра в в функции
__blkg_lookup

https://bugzilla.redhat.com/1230412
virt-v2v должен игнорировать фиктивные записи ядра в конфигурации grub

https://bugzilla.redhat.com/1229119
Несвязанная информация в fstab приводит к сбою virt-v2v с неясной информацией об ошибке

https://bugzilla.redhat.com/1227609
virt-p2v: использование кнопки «Назад» приводит к многократному повторному заполнению списка вывода.

https://bugzilla.redhat.com/1225789
После преобразования в libvirt для гостевой системы rhel5.11 установлен неправильный видеодрайвер

https://bugzilla.redhat.com/1204131
RFE: virt-builder создает образы qcow v3, добавляет опцию сборки для qcow v2

https://bugzilla.redhat.com/1176801
Файл / etc / sysconfig / kernel не обновляется при преобразовании гостевой системы XenPV с обычным ядром
установлен

https://bugzilla.redhat.com/1174551
lstatnslist и lstatlist не выдают ошибку, если API используется неправильно.

https://bugzilla.redhat.com/1168223
koji spin-livecd не может создать рабочий live CD

https://bugzilla.redhat.com/1165785
Ошибка команды mount-loop: сбой монтирования: неизвестная ошибка -1

https://bugzilla.redhat.com/1164708
set-label может устанавливать только <= 127 байт для btrfs и <= 126 байт для файловой системы ntfs, которая
не встречайте справочное сообщение. Также для ntfs он должен выдавать предупреждающее сообщение, когда
длина> 128 байт

https://bugzilla.redhat.com/1020216
libvirt не может закрыть домен: не удалось уничтожить домен libvirt: запрошено
операция недопустима: домен не запущен

https://bugzilla.redhat.com/1011907
mount-loop не удалось настроить устройство цикла: нет такого файла или каталога

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.30


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.28.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Новое инструменты

вирт-диб(1) - безопасная альтернатива инструменту OpenStack «diskimage-builder».
Он совместим с элементами построения образа диска. (Пино Тоскано)

виртуальное ядро(1) извлекает ядро ​​и виртуальный диск из образа диска. Ранее это
функциональность была частью строитель добродетели(1), но новый инструмент более функциональный. (Пино
Тоскано)

Новое функции in существующий инструменты

вирт-v2v(1) -i ова режим теперь может читать более широкий спектр файлов OVA, а также распакованные файлы
(каталоги).

virt-v2v теперь безопасно передает параметры в curl, поэтому пароли, файлы cookie и т. д. не могут быть
видны пользователям с доступом к оболочке на том же компьютере.

virt-v2v имеет новый --password-файл опция, позволяющая безопасно передать пароль, и
чтобы избежать интерактивного запроса.

virt-v2v отключает автоматическую перезагрузку Windows, что приводит к сбоям преобразования отладки в Windows
проще.

virt-v2v теперь поставляется с обширным набором внешних тестов. Видеть вирт-v2v-тест-жгут(1).

virt-v2v позволяет драйверам virtio поступать из любого места (Роман Каган), а драйверы могут быть
читать прямо из virtio ISO.

virt-v2v поддерживает преобразование Windows ≥ 8. Обратите внимание, что это экспериментально и, возможно,
сломанный. Используйте с осторожностью.

virt-v2v теперь может конвертировать гостей UEFI.

вирт-p2v(1) добавляет диалоговое окно конфигурации сети.

virt-p2v теперь имеет триггеры «p2v.pre», «p2v.post» и «p2v.fail», позволяющие создавать произвольные сценарии.
для подготовки хоста к конвертации и наведения порядка после конвертации.

virt-p2v теперь использует более продвинутый оконный менеджер Metacity (вместо спичечного коробки).

вирт-sysprep(1) удалит "/ var / spool / mail / username" для учетных записей без полномочий root (Hu Tao).

виртуальная настройка(1) строитель добродетели(1) и virt-sysprep имеют следующие новые параметры:

--команды из файла
разрешить чтение длинных списков команд из файла, а не из командной строки
(Пино Тоскано)

- копия
копировать файлы внутри гостя (Марош Затко)

--копировать-в
рекурсивно копировать файлы хоста в гостевую (Pino Toscano)

--двигаться
перемещать файлы внутри гостя (Марош Затко)

--ssh-внедрить
вводить SSH-ключи в гостя (Pino Toscano)

--см-прикрепить
--sm-учетные данные
--sm-регистр
--sm-удалить
--sm-отменить регистрацию
зарегистрировать и отменить регистрацию гостя в диспетчере подписок (Pino Toscano)

--трогать
прикоснуться к файлу в гостевой (Pino Toscano)

--truncate
--truncate-рекурсивный
обрезать файлы (Марош Затко)

Улучшения поддержки первой загрузки virt-customize. В частности, первая загрузка Windows должна
работают так же хорошо, как Linux (Роман Каган).

вирт-дф(1) теперь может использовать PolicyKit, SASL и другие методы аутентификации при получении
список доменов из libvirt.

Улучшения в завершении команды guestfish bash (Pino Toscano).

Завершение Bash теперь завершает короткие варианты, а также длинные варианты (Pino Toscano).

рыба-гость(1) теперь отображает синопсис команды, если количество параметров, заданных для
команда неверна (Ху Тао).

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 осмотр теперь возвращает поля эпохи RPM.

Пакеты Debian теперь имеют отдельные поля «Эпоха» и «Версия» (Никос Скалкотос).

Добавлено обнаружение OpenBSD, FreeBSD и NetBSD добавлены как отдельные "дистрибутивы" и другие BSD
улучшения в инспекции и исправления ошибок (Никос Скалкотос).

Добавлено обнаружение CoreOS (Никос Скалкотос).

Менеджер пакетов в Fedora ≥ 22 - «dnf».

Гости ReactOS могут быть проверены (Марош Затко).

Добавьте поддержку для гостей UEFI.

Проверка теперь работает, когда модули ядра сжаты gzip или xz (Pino Toscano).

Инспекция теперь распознает гостей ppc64 и ppc64le (Марош Затко).

Проверка отображает список установленных приложений на гостевых компьютерах Archlinux (Никос Скалкотос).

Архитектуры и Платформы

Архитектуры PPC64 (POWER7) и PPC64LE (POWER8) теперь намного лучше поддерживаются, и
должно работать из коробки.

Для aarch64 мы используем AAVMF (реализация UEFI с открытым исходным кодом на основе OVMF), если она доступна.
для запуска прибора.

Для armv7 теперь мы используем -M добродетель тип машины по умолчанию.

Улучшена поддержка компиляции на платформах, отличных от Linux (Pino Toscano, Margaret
Левицкой).

Libguestfs теперь должен работать на 32-битной системе MIPS с прямым порядком байтов ("mipsel"). Я не смог
чтобы попробовать 64-битный или большой порядок байтов.

Безопасность.
CVE-2014-8484
CVE-2014-8485
Libguestfs ранее запускал струны(1) утилита для ненадежных файлов. Струны могли
небезопасно анализировать заголовки BFD, что может привести к выполнению произвольного кода.
Libguestfs теперь запускает строки с флагом, чтобы гарантировать, что он не пытается анализировать BFD.
заголовки. Это могло привести к эксплуатации устройства libguestfs, но поскольку
libguestfs дополнительно ограничивает устройство с помощью виртуализации, SELinux и других
методы, маловероятно, что это вызвало повышение привилегий на хосте.

Внедрение XPath в virt-v2v
Одна возможная уязвимость внедрения XPath была исправлена ​​в virt-v2v. Это могло иметь
позволил злонамеренному гостю, который был преобразован с помощью virt-v2v, создать
произвольное выражение XPath, которое было бы оценено на хосте (библиотекой libxml2
библиотека, связанная с двоичным файлом virt-v2v). Непонятно, каковы последствия этого
возможно.

Для получения дополнительной информации см. Коммит вверх по течению.
https://github.com/libguestfs/libguestfs/commit/6c6ce85f94c36803fe2db35a98db436bff0c14b0

Отказ в обслуживании при использовании "qemu-img info"
При использовании фаззера American Fuzzy Lop ("afl-fuzz") в команде "qemu-img info",
Ричард WM Джонс обнаружил, что определенные файлы могут вызывать использование программой qemu-img
много памяти и времени (например, 6 ГБ кучи и 14 секунд процессорного времени на быстром
Процессор Intel), а в некоторых случаях и сбой. Поскольку libguestfs может запускать qemu-img
info "на образах дисков, чтобы узнать, что они содержат, это временно может вызвать
libguestfs, чтобы зависнуть или потребить много памяти.

Libguestfs был изменен таким образом, что он использует ограничения ресурсов для ограничения пространства и времени.
используется "qemu-img info", чтобы избежать этой проблемы. Если злоумышленник пытается передать один
этих образов дисков в libguestfs произойдет сбой "qemu-img", и о сбое будет сообщено
вернуться к вызывающим абонентам libguestfs в виде сообщения об ошибке.

API
Новое API

"guestfs_add_libvirt_dom"
Это предоставляет ранее частный API, который позволяет вам передавать объект "virDomainPtr"
прямо из libvirt в libguestfs.

"guestfs_blockdev_setra"
Настройте параметр опережения чтения для устройств. См. Команду "blockdev --setra".

"guestfs_btrfs_balance"
"guestfs_btrfs_balance_cancel"
"guestfs_btrfs_balance_pause"
"guestfs_btrfs_balance_resume"
"guestfs_btrfs_balance_status"
Балансная поддержка файловых систем Btrfs (Hu Tao).

"guestfs_btrfs_filesystem_defragment"
Поддержка дефрагментации файловой системы для файловых систем Btrfs (Hu Tao).

"guestfs_btrfs_image"
Создание образа файловой системы Btrfs (Чен Ханьсяо)

"guestfs_btrfs_qgroup_assign"
"guestfs_btrfs_qgroup_create"
"guestfs_btrfs_qgroup_destroy"
"guestfs_btrfs_qgroup_limit"
"guestfs_btrfs_qgroup_remove"
"guestfs_btrfs_qgroup_show"
"guestfs_btrfs_quota_enable"
"guestfs_btrfs_quota_rescan"
Цитировать поддержку файловых систем Btrfs (Hu Tao).

"guestfs_btrfs_rescue_chunk_recover"
Сканирование и восстановление дерева фрагментов в файловых системах Btrfs (Hu Tao).

"guestfs_btrfs_rescue_super_recover"
Восстановление суперблоков в файловых системах Btrfs (Ху Тао).

"guestfs_btrfs_replace"
Заменить устройство в файловой системе Btrfs (Цао Цзинь).

"guestfs_btrfs_scrub"
"guestfs_btrfs_scrub_cancel"
"guestfs_btrfs_scrub_resume"
"guestfs_btrfs_scrub_status"
Очистите файловую систему Btrfs (Hu Tao).

"guestfs_btrfs_subvolume_get_default"
Получить подобтом по умолчанию файловой системы Btrfs (Hu Tao).

"guestfs_btrfs_subvolume_show"
Вывести подробную информацию о подобъеме файловой системы Btrfs (Hu Tao).

"guestfs_btrfstune_enable_extended_inode_refs"
"guestfs_btrfstune_enable_skinny_metadata_extent_refs"
"guestfs_btrfstune_seeding"
Различные параметры настройки для файловых систем Btrfs (Chen Hanxiao).

"guestfs_c_pointer"
Верните указатель C на базовый "guestfs_h *". Это позволяет взаимодействовать
Связывание libguestfs с привязками из других библиотек. Для получения дополнительной информации см.
https://bugzilla.redhat.com/1075164

"guestfs_copy_in"
"guestfs_copy_out"
Гибкие API для рекурсивного копирования каталогов файлов между хостом и гостем
файловая система. Раньше они были доступны только как команды guestfish, но теперь любые
Пользователи API могут называть их (Pino Toscano).

"guestfs_part_get_gpt_guid"
"guestfs_part_set_gpt_guid"
Получите и установите GUID GPT для каждого раздела.

"guestfs_part_get_mbr_part_type"
Получить тип раздела MBR (Chen Hanxiao).

"guestfs_set_uuid_random"
Установите UUID файловой системы на случайно сгенерированное значение; поддерживаемые файловые системы
в настоящее время это ext2 / 3/4, XFS, Btrfs и разделы подкачки. (Чэнь Ханьсяо).

Другое API изменения

"guestfs_disk_create" теперь может использовать файлы VMDK в качестве резервных файлов.

"guestfs_btrfs_subvolume_snapshot" принимает дополнительные необязательные параметры (все добавлены Ху Тао):

"ро"
для создания снимка Btrfs только для чтения

"qgroupid"
для добавления снимка в qgroup

"guestfs_btrfs_subvolume_create" также может принимать необязательный параметр "qgroupid" (Hu Tao).

"guestfs_set_uuid" может установить UUID разделов подкачки, Btrfs (Hu Tao, Chen Hanxiao).

«guestfs_copy_device_to_file» и «guestfs_copy_file_to_file» имеют новое необязательное «добавление»
параметр, позволяющий добавлять в выходной файл вместо его усечения.

"guestfs_mkfs" имеет новый необязательный параметр "label" для установки начальной метки нового
файловая система (Pino Toscano).

"guestfs_set_label" и "guestfs_set_uuid" теперь устанавливают "ENOTSUP" как errno, если нет
реализована поддержка файловой системы указанного монтируемого объекта (Chen Hanxiao).

Переменные среды теперь позволяют писать «LIBGUESTFS_DEBUG = true», «LIBGUESTFS_DEBUG = 0» и
так далее.

Все API "guestfs_sfdisk *" устарели. Потому что sfdisk(8) было переписано,
несовместимо, восходящий поток, мы не рекомендуем использовать эти API в будущем коде. Использовать
API "guestfs_part *" в качестве замены.

API, такие как "guestfs_download", не усекают / dev / stdout or / dev / stderr при письме в
их, что означает, что если вы перенаправляете stdout или stderr в файл, файл больше не
усеченный.

Построить изменения
Демон больше не использует свою отдельную копию gnulib. Вместо этого он разделяет один
копировать с библиотекой.

OCaml .аннот файлы теперь созданы, поэтому IDE и редакторы, такие как emacs и vi, могут просматривать OCaml
типы в исходном коде.

Различные исправления, позволяющие создавать разные архитектуры хоста / устройства (Pino Toscano).

Automake теперь используется напрямую для сборки всех программ OCaml вместо специального Makefile.
правила. Одним из побочных эффектов этого является включение предупреждений во всем коде C, используемом OCaml.
программ.

"-fno-strict-overflow" используется во всей сборке, чтобы избежать сомнительных оптимизаций GCC.

Несколько очисток для поддержки GCC 5.

OCaml OUnit2 необходим для запуска некоторых тестов OCaml.

Создание статически связанного libguestfs.a должен снова работать.

Команда SRC / API-поддержка подкаталог и его скрипты больше не используются. Вместо этого мы храним в
генератор / actions.ml когда API был добавлен в libguestfs.

Интернационализация
Служба перевода изменилась с Transifex на Zanata.

Сейчас доступно гораздо больше переводов, как для сообщений библиотеки, так и для сообщений об инструментах и
документация.

Внутренности
Во всех инструментах OCaml теперь есть общие функции «ошибка», «предупреждение», «информация» и общие
способ установить и получить --тихий, -x (след) и -v (подробные) флаги и цветовое выделение
используется последовательно.

Макросы «COMPILE_REGEXP» используются для упрощения конструкторов и деструкторов PCRE.

В генераторе наконец-то реализованы аргументы "Указатель".

Внутренние идентификаторы больше не используют двойные и тройные подчеркивания (например,
"guestfs___program_name"). Эти идентификаторы недействительны для программ C99 и C ++,
хотя компиляторы их примут.

Демон больше не анализирует параметры "guestfs_ *" из / proc / cmdline. Вместо этого требуется только
обычные параметры командной строки. Сценарий инициализации устройства превращается / proc / cmdline в демона
параметры командной строки.

Теперь тесты могут запускать демон как «связанный процесс», что позволяет запускать его непосредственно на
гостья. Основное преимущество этого заключается в том, что мы можем запускать valgrind непосредственно на демоне во время
тестирование.

ошибки фиксированной
https://bugzilla.redhat.com/1239053
Сообщение об ошибке virt-v2v, когда grub.conf не может быть проанализирован Augeas

https://bugzilla.redhat.com/1238053
v2v: дублирующийся целевой диск установлен при преобразовании гостя с подключенным компакт-диском

https://bugzilla.redhat.com/1237869
Драйверы Virtio не устанавливаются для гостей Windows 2008 с помощью virt-v2v

https://bugzilla.redhat.com/1234351
virt-v2v Поддержка драйверов Fedora virtio-win

https://bugzilla.redhat.com/1232192
Virt-v2v выдает ошибку на пустом диске: part_get_parttype: unknown signature, of the
вывод: BYT;

https://bugzilla.redhat.com/1229385
virt-p2v в режиме командной строки ядра должен выключить компьютер после преобразования

https://bugzilla.redhat.com/1229340
virt-p2v никакой режим GUI не добавляет \ n к последнему параметру командной строки

https://bugzilla.redhat.com/1229305
virt-sysprep при очистке удаляет /var/spool/at/.SEQ, что приводит к сбою в

https://bugzilla.redhat.com/1226794
«Выполняется преобразование…» по-прежнему отображается после отмены преобразования из клиента virt-p2v

https://bugzilla.redhat.com/1215042
Утечка памяти в virNetSocketNewConnectUNIX

https://bugzilla.redhat.com/1213324
virt-v2v: предупреждение: неизвестная гостевая операционная система: окна Windows 6.3 при преобразовании
win8,win8.1,win2012,win2012R2 to rhev

https://bugzilla.redhat.com/1213247
Виртуальные инструменты должны выводить строку версии в том же формате

https://bugzilla.redhat.com/1212808
RFE: virt-builder - касание

https://bugzilla.redhat.com/1212807
флаг virt-builder --selinux-relabel не работает при кросс-архитектурных сборках

https://bugzilla.redhat.com/1212680
RFE: запрос xpath virt-Inspector должен выводить аккуратный формат элемента запроса

https://bugzilla.redhat.com/1212152
Ошибка firstboot-command virt-builder: слишком длинное имя файла

https://bugzilla.redhat.com/1211996
virt-Inspector дает неверную арку (ppc64) для гостя ppc64le

https://bugzilla.redhat.com/1203817
RFE: virt-customize --move и --copy

https://bugzilla.redhat.com/1201526
index-parser не может правильно анализировать файлы монтирования systemd

https://bugzilla.redhat.com/1196101
Параметр virt-builder --upload не работает с разделом FAT

https://bugzilla.redhat.com/1196100
Параметр virt-builder -x сам по себе не включает трассировку

https://bugzilla.redhat.com/1195204
`virt-builder` должен создать каталог $ HOME / .cache, если он еще не существует

https://bugzilla.redhat.com/1193237
Отпечаток Virt-builder требуется, даже если проверка не требуется

https://bugzilla.redhat.com/1189284
virt-resize должен сохранять UUID разделов GPT, иначе гости EFI не смогут загрузиться

https://bugzilla.redhat.com/1188866
Снижение производительности в virt-builder при распаковке изображения

https://bugzilla.redhat.com/1186800
virt-v2v должен поддерживать ova в формате gzip в качестве входных данных

https://bugzilla.redhat.com/1185561
virt-sparsify должен игнорировать LV, доступные только для чтения

https://bugzilla.redhat.com/1182463
«mknod-b», «mknod-c» и «mkfifo» не удаляют биты без прав доступа из «mode»

https://bugzilla.redhat.com/1176493
virt-v2v игнорирует звуковое устройство при преобразовании гостя xen в локальный kvm

https://bugzilla.redhat.com/1175676
Ошибка опечатки в 'help ping-daemon'

https://bugzilla.redhat.com/1175196
"parse-environment" и "parse-environment-list" не могут проанализировать "LIBGUESTFS_TRACE = 0"

https://bugzilla.redhat.com/1175035
"is-blockdev" / "is-blockdev-opts" не может обнаружить "/ dev / sda"

https://bugzilla.redhat.com/1174280
RFE: разрешить преобразование v2v виртуальной машины Oracle Linux 5.8 VMware

https://bugzilla.redhat.com/1174200
Новая ошибка virt-v2v: CURL: ошибка при открытии файла: NSS: сертификат клиента не найден
(ник не указан): недопустимый аргумент

https://bugzilla.redhat.com/1174123
Графический пароль исчезает после преобразования virt-v2v

https://bugzilla.redhat.com/1174073
Адрес прослушивания для vnc изменяется после преобразования с помощью virt-v2v

https://bugzilla.redhat.com/1171666
инспекция считает, что раздел EFI - это отдельная операционная система

https://bugzilla.redhat.com/1171130
Преобразование virt-v2v гостевой системы RHEL 3 завершается ошибкой: все ваши устройства с обратной связью находятся в
используют

https://bugzilla.redhat.com/1170685
Ошибка преобразования гостевой RHEL 4: rpm -ql 1: kernel-utils-2.4-23.el4: virt-v2v: error:
Ошибка libguestfs: строки_команды:

https://bugzilla.redhat.com/1170073
virt-v2v выбирает ядра отладки вместо ядер без отладки, когда версии равны

https://bugzilla.redhat.com/1169045
virt-sparsify: ошибка libguestfs: qemu-img info: 'virtual-size' не может быть представлен как
64-битное целое число

https://bugzilla.redhat.com/1169015
virt-resize --expand не работает на образе ubuntu-14.04.img (регресс)

https://bugzilla.redhat.com/1168144
предупреждение: fstrim: fstrim: / sysroot /: FITRIM ioctl failed: операция не поддерживается
(игнорируется) при преобразовании гостя win2003 с сервера xen

https://bugzilla.redhat.com/1167921
p2v: диалоговое окно «Нет сетевого подключения»

https://bugzilla.redhat.com/1167774
virt-p2v завершается с ошибкой: "nbd.c: nbd_receive_negotiate (): L501: не удалось прочитать "

https://bugzilla.redhat.com/1167623
Удалите сообщение «Если вы сообщаете об ошибках, запустите virt-v2v с включенной отладкой ..», когда
работает virt-p2v

https://bugzilla.redhat.com/1167601
Сообщение «Преобразование выполнено успешно» появляется даже при сбое virt-p2v

https://bugzilla.redhat.com/1167302
virt-v2v: предупреждение: жесткий диск ova не имеет родительского контроллера при преобразовании из файла ova

https://bugzilla.redhat.com/1166618
virt-resize должен выдавать подробную информацию с предупреждением, чтобы клиенты знали, что происходит
неправильно

https://bugzilla.redhat.com/1165975
Файл "/boot/grub2/device.map" отображается некорректно после преобразования гостя rhel7 из
сервер esx

https://bugzilla.redhat.com/1165785
Ошибка команды mount-loop: сбой монтирования: неизвестная ошибка -1

https://bugzilla.redhat.com/1165569
Отключить кнопку «отменить преобразование» после завершения преобразования virt-p2v

https://bugzilla.redhat.com/1165564
Предоставить кнопку перезагрузки / выключения после virt-p2v

https://bugzilla.redhat.com/1164853
При загрузке в qemu не обнаружены группы томов и не удалось проверить файловые системы

https://bugzilla.redhat.com/1164732
Описание 'help append' неточно, оно добавляет параметры ядра в
Устройство libguestfs, а не гостевое ядро

https://bugzilla.redhat.com/1164697
опечатки на страницах руководства

https://bugzilla.redhat.com/1164619
Ошибка проверки-получения-значка на гостевой системе RHEL7

https://bugzilla.redhat.com/1162966
xfs также должен выдавать предупреждение, чтобы клиент знал об ограничении.

https://bugzilla.redhat.com/1161575
Не удалось импортировать гостя с ником "rtl8139" на сервер openstack после преобразования с помощью v2v

https://bugzilla.redhat.com/1159651
Сценарий первой загрузки virt-sysprep не удаляется, если он перезагружает гостевую систему RHEL 7

https://bugzilla.redhat.com/1159258
esx win2008 32-битная гость не загружается после преобразования, потому что прошивка не ACPI
совместим

https://bugzilla.redhat.com/1159016
Бэкэнд libvirt не устанавливает пароль RBD

https://bugzilla.redhat.com/1158526
Используйте файл паролей вместо взаимодействия с процессом

https://bugzilla.redhat.com/1157679
virt-p2v-make-disk должен добавить прошивки

https://bugzilla.redhat.com/1156449
libguestfs FTBFS на f21 ppc64le

https://bugzilla.redhat.com/1156301
virt-Inspector поддерживает добавление удаленного диска, но на его странице руководства -a URI / --add URI указано
отсутствующий

https://bugzilla.redhat.com/1155121
Virt-v2v завершится ошибкой при использовании относительного пути для -i ova

https://bugzilla.redhat.com/1153844
Пробел избыточности в конце имени каталога при использовании завершить
имя каталога в guestfish с файловой системой xfs в гостевой системе

https://bugzilla.redhat.com/1153589
virt-v2v зависает при преобразовании гостя esx перед этапом копирования диска

https://bugzilla.redhat.com/1152998
virt-v2v / qemu-img не работает с изображением яйцеклетки

https://bugzilla.redhat.com/1151910
virt-ls должен удалить '/' в выводе, если указать имя каталога как / Etc /

https://bugzilla.redhat.com/1151900
Также следует добавить поле для файлов каталога при запуске virt-ls с параметром --csv

https://bugzilla.redhat.com/1151033
Преобразование virt-v2v с сервера VMware vCenter выполняется медленно

https://bugzilla.redhat.com/1146832
virt-v2v не может преобразовать гостя с томом типа диска

https://bugzilla.redhat.com/1146007
Ошибка ввода / вывода при преобразовании гостевой системы esx.

https://bugzilla.redhat.com/1135585
[RFE] virt-builder должен поддерживать копирование в каталог / список файлов.

https://bugzilla.redhat.com/1089566
[abrt] livecd-tools: kickstart.py:276:apply:IOError: [Errno 2] Нет такого файла или
каталог:
'/run/media/jones/2tp001data/createlive/temp/imgcreate-_dX8Us/install_root/etc/rpm/macros.imgcreate'

https://bugzilla.redhat.com/1079625
virt-sparsify завершается ошибкой, если файловая система btrfs содержит моментальные снимки только для чтения

https://bugzilla.redhat.com/1075164
RFE: разрешить передачу предварительно открытого соединения libvirt из python

https://bugzilla.redhat.com/912499
Контекст безопасности в файле изображения сбрасывается

https://bugzilla.redhat.com/889082
[RFE] virt-v2v должен сначала проверить, существует ли гость с таким же именем на цели, а затем
перенести диск

https://bugzilla.redhat.com/855059
RFE: virt-p2v: отображение дополнительной информации о сетевых устройствах, таких как топология,
склеивание и т. д.

https://bugzilla.redhat.com/823758
Клиент p2v должен иметь наибольшее количество ограничений для настроек ЦП и памяти.

https://bugzilla.redhat.com/709327
hivex не может читать кусты реестра из ReactOS

https://bugzilla.redhat.com/709326
virt-Inspector не может обнаружить ReactOS

https://bugzilla.redhat.com/119673
установка через NFS не работает

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.28


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.26.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Инструменты

вирт-v2v(1) и вирт-p2v(1) - это инструменты для преобразования сторонних гипервизоров (например,
VMware или Xen) или физических машин в KVM. Эти инструменты ранее были отдельным
проект. Код обоих инструментов интегрирован в дерево libguestfs. Как часть
рефакторинга virt-p2v был переписан (из Ruby, теперь C), и теперь virt-v2v использует
несколько современных функций qemu, благодаря которым он работает во много раз быстрее, чем раньше.
вирт-v2v(1) можно импортировать из: VMware vCenter, файлов VMware OVA, файлов локального диска, libvirt,
RHEL 5 Xen. Он может выводиться в: oVirt или Red Hat Enterprise Virtualization (RHEV-M),
OpenStack Glance, libvirt, qemu, файлы на локальном диске.

виртуальный журнал(1) - это новый инструмент для просмотра файлов журналов от гостей. Он поддерживает множество
гости, включая традиционный Linux, журнал с использованием Linux и журнал событий Windows.

строитель добродетели(1) имеет новую опцию "--machine-readable", чтобы упростить использование virt-
строитель из других программ.

Новое строитель добродетели(1) и виртуальная настройка(1) --chmod опцию.

вирт-sysprep(1) теперь удаляются: журналы systemd, журналы anaconda, журналы lightdm, debian-
файлы установщика, журналы apt, журналы exim, журналы ConsoleKit, журналы firewalld, журналы grubby,
журналы proftpd, журналы libvirt / libxml и несколько других файлов журналов. Virt-sysprep
Операция "пользователь-учетная запись" теперь может удалять или сохранять определенные учетные записи пользователей. (Пино
Тоскано).

Новое гостевая гора(1) --fd вариант, позволяющий запускать гостевой маунт под другим
процесса.

вирт-разреженный(1) есть новый --tmp опция, позволяющая точно контролировать временные
файлы хранятся.

вирт-разреженный(1) теперь может писать на блочное устройство.

виртуальная настройка(1) и вирт-sysprep(1) теперь поддерживает добавление скриптов первой загрузки в Windows
.

виртуальный кот(1) вирт-править(1) вирт-лс(1) теперь поддерживают -m вариант, позволяющий переопределить
автоматический осмотр гостей и вместо этого указывать куда монтировать перегородки (пино
Тоскано).

Инструменты virt теперь имеют цветной вывод: зеленый для ОК, красный для ошибок, синий для предупреждений.

Язык переплеты

Вы можете создать дистрибутив Python с помощью «make -C python sdist»

Привязки Ruby изменились с «Test :: Unit» на «MiniTest».

Привязки Java теперь совместимы с OpenJDK 8 (Pino Toscano).

Инспекция

Oracle Linux возвращается как «oraclelinux» (Никос Скалкотос).

Гости Linux, у которых нет / И т.д. / Fstab теперь можно обрабатывать (Пино Тоскано).

Minix возвращается как minix (Pino Toscano).

Архитектуры

Добавлена ​​поддержка Aarch64 (64-битная ARM).

Проверка и вызов "guestfs_file_architecture" теперь могут распознавать руку (32 бита) и
aarch64 гостей.

Безопасность.
CVE-2014-0191 Использование сети и разрешение сущностей при синтаксическом анализе XML
Libguestfs ранее использовала небезопасные API libxml2 для синтаксического анализа libvirt XML. Эти API
по умолчанию разрешены сетевые подключения, когда определенные XML-документы были
представлен. Используя искаженный XML-документ, также можно было исчерпать весь ЦП,
память или файловые дескрипторы на машине.

Поскольку XML-файл libvirt поступает из надежного источника (демона libvirt), он не
думал, что это можно было использовать.

Это было исправлено в libguestfs ≥ 1.27.9, и исправление было перенесено в стабильные версии ≥
1.26.2, ≥ 1.24.9, ≥ 1.22.10 и ≥ 1.20.13. (Спасибо: Дэн Беррандж, Пино Тоскано).

Shellshock (баш CVE-2014-6271)
Эта ошибка bash косвенно влияет на libguestfs. Для получения дополнительной информации см .:
https://www.redhat.com/archives/libguestfs/2014-September/msg00252.html

API
Новое API

"guestfs_clear_backend_setting"
"guestfs_get_backend_setting"
"guestfs_set_backend_setting"
Используйте эти API для установки индивидуальных настроек серверной части.

"guestfs_cpio_out"
Преобразуйте каталог в образе диска в формат cpio.

"guestfs_journal_get_realtime_usec"
Получите точное время журнала, см. sd_journal_get_realtime_usec(3).

"guestfs_lstatns"
"guestfs_lstatnslist"
"guestfs_statns"
Улучшенные версии "guestfs_lstat", "guestfs_lstatlist", "guestfs_stat", которые возвращают
наносекундные временные метки.

Построить изменения
Libguestfs теперь можно собрать с помощью qemu 2.x.

Добавьте поддержку упаковки устройства на Mageia (Джозеф Ван, Тьерри Винно).

Augeas теперь является обязательной зависимостью.

Flex и bison теперь требуются зависимости.

Внутренности
Пользовательский режим Linux (UML) больше не поддерживается серверной частью (хотя все еще доступен). Это
будет снова поддерживаться, как только кто-то вмешается и исправит различные регрессии и неисправности
в ядре UML (Linux).

Теперь вы можете подключить gdb к qemu, указав "LIBGUESTFS_BACKEND_SETTINGS = gdb"

Последовательный BIOS (sgabios) теперь используется серверной частью libvirt (только на x86), поэтому мы видим
ранние сообщения BIOS.

Для инструментов OCaml virt исключения теперь обрабатываются и печатаются общей функцией.

Предупреждение GCC о фреймах большого стека теперь включено по умолчанию. Несколько мест, которые
исправлены использованные большие массивы и структуры в стеке.

Теперь есть тест для повторной загрузки устройства. Полезно для поиска ядра
утечки. Видеть: тесты / qemu / qemu-boot.c

Есть тест для проверки скорости различных функций qemu, таких как virtio-serial.
загружает и блокирует запись на устройство. Видеть: тесты / qemu / qemu-speed-test.c

Предупреждения GCC теперь включены для привязок OCaml-C в инструментах OCaml virt.

Код для редактирования файлов, используемый вирт-править(1) рыба-гость(1) команда "редактировать",
виртуальная настройка(1) --редактировать опция и многое другое теперь распределяется между всеми этими утилитами (спасибо
Пино Тоскано).

Тесты FUSE были переписаны на C, чтобы обеспечить более точный контроль над тем, как выполняются системные вызовы.
испытания.

Команда обновление-ошибки.sh скрипт был исправлен, поэтому он больше не должен создавать пустые "ОШИБКИ"
файл, если сервер Bugzilla недоступен.

Команда виртуальное изменение размера(1) тесты теперь используют стохастический метод, чтобы гарантировать более глубокий и широкий
тестирование.

Когда сеть включена, устройство теперь использует DHCP для получения IP-адреса.

Если используется libvirt, то устройство будет подключаться к "virbr0" (можно переопределить с помощью
установка "LIBGUESTFS_BACKEND_SETTINGS = network_bridge = "). Это позволяет полностью
особенности сетевых подключений, с работающим ICMP, пингом и так далее.

ошибки фиксированной
https://bugzilla.redhat.com/1153515
пустой (но установленный) LIBGUESTFS_BACKEND выводит libguestfs: error: недопустимый бэкэнд:

https://bugzilla.redhat.com/1151766
Пакет libguestfs-bash-completion содержит файл
/ usr / share / bash-completion / completions / virt-log, но нет _virt_log () функция в этом
файл

https://bugzilla.redhat.com/1151738
ошибка опечатки на странице руководства virt-edit

https://bugzilla.redhat.com/1151033
Преобразование virt-v2v с сервера VMware vCenter выполняется медленно

https://bugzilla.redhat.com/1150880
virt-v2v: предупреждение: дисплей игнорировался при преобразовании rhel5
гость с sdl графикой

https://bugzilla.redhat.com/1150867
'copy-file-to-file / src / dest' создать файл / dest, даже если команда 'copy-file-to-file
/ src / dest 'не удалось

https://bugzilla.redhat.com/1150815
Не могу найти "РЕКУРСИВНЫЙ Лонг-листинг" в 'man virt-diff'

https://bugzilla.redhat.com/1150701
virt-v2v не удаляет диски с данными и не смонтированные файловые системы.

https://bugzilla.redhat.com/1150475
При экспорте 2+ гостевых дисков в RHEV, после импорта отображается только один диск

https://bugzilla.redhat.com/1148355
virt-filesystems: неверное имя LVM vg при перечислении образа Fedora 21 Alpha Atomic
файловые системы

https://bugzilla.redhat.com/1148072
Отсутствует опция --no-selinux-relabel

https://bugzilla.redhat.com/1148012
RFE: разрешить использование qemu-bridge-helper для реализации guestfs_set_network

https://bugzilla.redhat.com/1146815
virt-v2v выводит предупреждение: / files / etc / fstab / 8 / spec ссылается на неизвестное устройство "cdrom"

https://bugzilla.redhat.com/1146275
Регрессия установка пароля root с помощью virt-builder / virt-customize

https://bugzilla.redhat.com/1146017
virt-v2v -v -x во время преобразования гостя Windows будет зависать в hivex: hivex_open: used
идентификатор блока ……

https://bugzilla.redhat.com/1145995
Улучшить информацию об ошибках при преобразовании гостевой Windows с нечистой файловой системой

https://bugzilla.redhat.com/1145916
virt-v2v не может преобразовать гостя Win7

https://bugzilla.redhat.com/1144891
RFE: вызовы статистики не возвращают наносекундные отметки времени

https://bugzilla.redhat.com/1144766
futimens () не работает через guestmount

https://bugzilla.redhat.com/1144201
guestfish не может восстановить цвет вывода терминала при выходе из guestfish, если
цвет фона терминала черный, тогда это будет неудобно

https://bugzilla.redhat.com/1143949
Параметр virt-customize '--password-crypto' не работает

https://bugzilla.redhat.com/1143887
Предупреждение отображается при преобразовании гостей в rhev: chown: при смене владельца
'/tmp/v2v.u48xag/*.ovf': недопустимый аргумент

https://bugzilla.redhat.com/1143883
предупреждение отображается при преобразовании гостя rhel7: virt-v2v: не удалось обновить консоль grub2:
aug_get: нет подходящего узла (игнорируется)

https://bugzilla.redhat.com/1143866
virt-v2v завершается с ошибкой: невозможно открыть индекс пакетов с помощью db5

https://bugzilla.redhat.com/1142416
part-get-name give 'libguestfs: error: part_get_name: parted не поддерживает
вывод машины (-m) 'сообщение об ошибке при запуске' part-get-name / dev / sda 1 '

https://bugzilla.redhat.com/1142186
Параметр virt-sysprep '--mount-options' не работает

https://bugzilla.redhat.com/1142158
Недопустимая команда 'part-get-name / dev / sda1 1' вызывает сбой устройства libguestfs

https://bugzilla.redhat.com/1142004
virt-v2v выводит предупреждение: ПРЕДУПРЕЖДЕНИЕ: /files/boot/grub/device.map ссылается на неизвестное устройство
"xvda"

https://bugzilla.redhat.com/1141723
virt-v2v: ошибка: диск sda не имеет определенного формата, отображается при преобразовании xen hvm guest

https://bugzilla.redhat.com/1141680
[RFE] virt-v2 должен поддерживать преобразование домена с использованием UUID домена вместо
доменное имя

https://bugzilla.redhat.com/1141631
[RFE] virt-v2 должен поддерживать преобразование гостя в пул каталогов с использованием uuid пула.

https://bugzilla.redhat.com/1141157
Параметр virt-sysprep '--user-accounts' не работает

https://bugzilla.redhat.com/1141145
virt-v2v не может преобразовать гостей xen pv.

https://bugzilla.redhat.com/1141113
virt-v2v не может преобразовать гостей esx

https://bugzilla.redhat.com/1140946
qemu-img дважды показывает сообщение об ошибке для резервного файла

https://bugzilla.redhat.com/1140894
Сообщения об ошибках не выводятся, если добавить '--format qcow2' после '-a guest.img', guest.img будет
файл изображения в необработанном формате

https://bugzilla.redhat.com/1140547
Параметр virt-builder '--format' не работает

https://bugzilla.redhat.com/1140156
RFE: экспорт в домен данных RHEV

https://bugzilla.redhat.com/1140050
Ошибка не отображается при использовании нескольких конфликтующих параметров с virt-v2v

https://bugzilla.redhat.com/1139973
Улучшение информации об ошибках при преобразовании гостевой системы xen без доступа SSH без пароля
настроить

https://bugzilla.redhat.com/1139543
Улучшить информацию об ошибках при преобразовании гостя без оставшегося места

https://bugzilla.redhat.com/1138586
При преобразовании запущенного гостя с помощью virt-v2v ошибка не отображается

https://bugzilla.redhat.com/1138184
virt-v2v завершится ошибкой при преобразовании гостей с initramfs- * kdump.img под / загрузки

https://bugzilla.redhat.com/1138182
Гость xen будет вызывать панику ядра после преобразования с помощью virt-v2v

https://bugzilla.redhat.com/1130189
Раздражающее сообщение о разрешениях / dev / kvm

https://bugzilla.redhat.com/1123007
'Direct' backend libguestfs должен закрыть файловые дескрипторы перед запуском qemu для
избегайте утечки! O_CLOEXEC fds

https://bugzilla.redhat.com/1122557
virt-sparsify перезаписывает блочные устройства, если они используются в качестве выходных файлов

https://bugzilla.redhat.com/1113156
Пустой fstab нарушает проверку libguestfs

https://bugzilla.redhat.com/1111662
Guestfs.Error ("vgchange_uuid_all: группа томов имеет активные логические тома")

https://bugzilla.redhat.com/1109174
Страница руководства virt-win-reg повреждена

https://bugzilla.redhat.com/1106548
root получает ошибку при доступе к некорневому каталогу на моментальном снимке guestmount VMDK img

https://bugzilla.redhat.com/1103877
Эти API также необходимо добавить в список команд `guestfish -h`

https://bugzilla.redhat.com/1102448
список пакетов mageia неверен

https://bugzilla.redhat.com/1102447
libguestfs 1.27.13 не собирается из-за порядка библиотеки libxml

https://bugzilla.redhat.com/1100498
RFE: механизм без опроса для определения готовности guestmount --no-fork

https://bugzilla.redhat.com/1099490
scrub-file не может обрабатывать файл ссылки

https://bugzilla.redhat.com/1099284
опечатки на страницах руководства

https://bugzilla.redhat.com/1098718
RFE: псевдонимы virt-builder

https://bugzilla.redhat.com/1096465
Параметр virt-builder "proxy = off" не отключает прокси для загрузок

https://bugzilla.redhat.com/1094746
virt-sparsify man не может упомянуть, что происходит со снимками в образе qcow2
(они выброшены)

https://bugzilla.redhat.com/1092753
virt-builder: если несколько репозиториев содержат одинаковые образы версии ОС, то они
дублированный в -l вывод

https://bugzilla.redhat.com/1091803
Ошибка выполнения tar-in-opts, что привело к сбою устройства libguestfs

https://bugzilla.redhat.com/1088424
virt-resize: ошибка libguestfs: имя_набора_частей: parted: / dev / sdb: ошибка во время
перевод: неверный или неполный многобайтовый или широкий символ

https://bugzilla.redhat.com/1088262
virt-builder не может писать на блочное устройство

https://bugzilla.redhat.com/1085029
Тесты Ruby терпят неудачу с последней версией Ruby

https://bugzilla.redhat.com/1079210
virt-sparsify --in-place не может разрежать столько, сколько следовало бы

https://bugzilla.redhat.com/1079182
virt-df не может сообщить об использованном дисковом пространстве гостя Windows при обновлении до 6.5

https://bugzilla.redhat.com/1077817
ошибка virt-builder: "синтаксическая ошибка в строке 3: синтаксическая ошибка"

https://bugzilla.redhat.com/1056290
virt-sparsify перезаписывает блочные устройства, если они используются в качестве выходных файлов

https://bugzilla.redhat.com/812970
virt-rescue не может установить ≥ подсказка, в Ubuntu 12.04

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.26


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.24.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Инструменты

виртуальная настройка(1) - это новый инструмент для настройки образов дисков виртуальных машин. Это позволяет вам
устанавливать пакеты, редактировать файлы конфигурации, запускать сценарии, устанавливать пароли и так далее.
строитель добродетели(1) и вирт-sysprep(1) используйте virt-customize и параметры командной строки для
все эти инструменты теперь идентичны.

вирт-дифф(1) - это новый инструмент для демонстрации различий между файловыми системами двух
виртуальные машины. В основном это полезно, когда вы показываете, какие файлы были изменены между
снимки.

строитель добродетели(1) был значительно улучшен. Есть еще много способов настроить
виртуальная машина. Он может извлекать шаблоны из нескольких репозиториев. Распараллеленный
внутренняя реализация xzcat ускоряет распаковку шаблона. Virt-builder использует
оптимизирующий планировщик, чтобы выбрать самый быстрый способ создания виртуальной машины. Теперь пользоваться стало проще
virt-builder из других программ. Добавлена ​​поддержка интернационализации
метаданные. Более эффективная перемаркировка файлов в SELinux. Можно собрать гостей для нескольких
архитектуры. Сообщения об ошибках были улучшены. (Пино Тоскано)

вирт-разреженный(1) есть новый --на месте вариант. Это разрежает изображение на месте (без
копирует его), а также намного быстрее. (Большая помощь предоставлена ​​Паоло Бонзини)

вирт-sysprep(1) может удалять и очищать файлы под контролем пользователя. Вы можете заблокировать учетные записи пользователей
или установить случайные пароли для учетных записей. Можно удалить больше файлов журнала. Может отписаться от гостя
из Red Hat Subscription Manager. Новый гибкий способ включения и отключения операций.
(Ванлун Гао, Пино Тоскано)

Вирт-победа-рег(1) позволяет использовать URI для указания образов удаленных дисков.

виртуальный формат(1) теперь может передать дополнительное пространство, которое он восстанавливает, обратно хосту.

рыба-гость(1) имеет дополнительные переменные среды для точного управления "> "
незамедлительный. Guestfish теперь читает свой (редко используемый) файл конфигурации в другом порядке, поэтому
эти локальные настройки имеют приоритет над глобальными настройками. (Пино Тоскано)

вирт-мейк-фс(1) был переписан на C, но не изменился с точки зрения функциональности и команд.
использование линии.

Язык переплеты

В привязках OCaml есть новый модуль "Guestfs.Errno", используемый для проверки номера ошибки.
возвращено "Guestfs.last_errno".

PHP-тесты теперь работают. (Пино Тоскано)

Инспекция

Инспекция может распознать живые образы Debian.

Архитектуры

ARMv7 (32 бит) теперь поддерживает ускорение KVM.

Поддерживается Aarch64 (ARM 64 бит), но аппаратная часть еще не работает.

Исправлена ​​и расширена поддержка PPC64.

Безопасность.
Отказ в обслуживании при проверке образов дисков с поврежденными томами btrfs
Было возможно вывести из строя libguestfs (и программы, использующие libguestfs в качестве библиотеки) с помощью
представление образа диска, содержащего поврежденный том btrfs.

Это было вызвано разыменованием указателя NULL, вызывающим отказ в обслуживании, и не является
считается пригодным для дальнейшего использования.

См. Фиксацию d70ceb4cbea165c960710576efac5a5716055486 для исправления. Это исправление включено
в стабильных ветках libguestfs ≥ 1.26.0, ≥ 1.24.6 и ≥ 1.22.8, а также в RHEL ≥ 7.0.
Более ранние версии libguestfs не уязвимы.

Лучшая генерация случайных корневых паролей и случайных семян
При генерации случайных корневых паролей и случайных начальных чисел были исправлены две ошибки:
возможно, связанные с безопасностью. Во-первых, мы больше не читаем лишние байты из
/ DEV / urandom (большинство из них просто выбросили). Во-вторых, мы изменили код на
Избегайте смещения по модулю. Считалось, что эти проблемы нельзя использовать. (Оба изменения
предложено Эдвином Торёком)

API
Параметры GUID теперь проверяются при передаче в вызовы API, тогда как раньше
вы могли передать любую строку. (Пино Тоскано)

Новое API

"guestfs_add_drive_opts": новый параметр "discard"
Новый параметр «discard» позволяет детально контролировать поддержку discard / trim для
конкретный диск. Это позволяет хост-файлу стать более разреженным (или тонким).
Provisioned), когда вы удаляете файлы или выполняете вызов API "guestfs_fstrim".

"guestfs_add_domain": новые параметры: "cachemode", "discard"
Эти параметры передаются при добавлении дисков домена.

"guestfs_blkdiscard"
Отменить все блоки на устройстве guestfs. В сочетании с параметром discard выше,
это делает хост-файл разреженным.

"guestfs_blkdiscardzeroes"
Проверьте, читаются ли отброшенные блоки как нули.

"guestfs_compare_ *"
"guestfs_copy_ *"
Для каждой структуры, возвращаемой через API, libguestfs теперь генерирует "guestfs_compare_ *"
и функции "guestfs_copy_ *", позволяющие сравнивать и копировать структуры.

"guestfs_copy_attributes"
Скопируйте атрибуты (например, разрешения, xattrs, владение) из одного файла в другой. (Пино
Тоскано)

"guestfs_disk_create"
Гибкий API для создания пустых образов дисков с нуля. Это позволяет избежать необходимости
вызывать внешние программы, такие как qemu-img(1).

"guestfs_get_backend_settings"
"guestfs_set_backend_settings"
Настройки для каждого сервера (также могут быть установлены через переменную среды
"LIBGUESTFS_BACKEND_SETTINGS"). Основное использование для этого - принудительный режим TCG в
бэкэнды на основе qemu, например:

экспорт LIBGUESTFS_BACKEND = прямой
экспорт LIBGUESTFS_BACKEND_SETTINGS = force_tcg

"guestfs_part_get_name"
Получите метку или имя раздела (для образов GPT-дисков).

Построить изменения
Для сборки libguestfs 1.26 требуются следующие дополнительные пакеты:

супермин ≥ 5
Для сборки этой версии libguestfs требуется Supermin версии 5.

флекс, бизон
Virt-builder теперь использует настоящий парсер для анализа файла метаданных, поэтому эти инструменты
требуется.

xz Теперь это обязательная зависимость сборки, хотя раньше она была (теоретически) необязательной.

Внутренности
Извлечение PO-сообщений переписано для большей надежности. (Пино Тоскано)

"podwrapper" выдает ошибку, если --вставлять or --дословно шаблон аргумента не найден.

Libguestfs теперь проходит qemu -включить-fips возможность включить FIPS, если qemu поддерживает это.

"./configure --without-qemu" можно использовать, если вы не хотите указывать значение по умолчанию
гипервизор.

Теперь создаются наложения копирования при записи [COW], используемые, например, для дисков только для чтения.
через внутренний серверный API (".create_cow_overlay").

Бэкэнд Libvirt использует несколько необычных макросов C для генерации XML. Это проще и безопаснее.

Изменился формат файла журнала изменений. Теперь это то же самое, что и "git log", а не
используя собственный формат.

Изменился запуск устройства:

· Устройство libguestfs теперь инициализирует LVM так же, как и на физическом
машины.

· Устройство libguestfs не записывает пустую строку в / proc / sys / ядро ​​/ горячее подключение
при запуске.

Обратите внимание, что вы Чёрный сконфигурируйте ваше ядро ​​так, чтобы "CONFIG_UEVENT_HELPER_PATH =" ""
в противном случае вы получите странные ошибки LVM (это относится как к любой машине Linux,
не только libguestfs). (Питер Райноха)

Libguestfs теперь можно строить на арках, у которых есть окамлк(1) но не окамлопт(1). (Хилко
Бенген, Олаф Геринг)

Вы не можете использовать "./configure --disable-daemon --enable-appliance". Это не имело смысла
в любом случае. Теперь это категорически запрещено скриптом настройки.

В файле packagelist для раскрытия макроса используется «m4» вместо «cpp».

ошибки фиксированной
https://bugzilla.redhat.com/1073906
привязки java, которые бросает inspect_list_applications2
java.lang.ArrayIndexOutOfBoundsException:

https://bugzilla.redhat.com/1063374
[RFE] разрешить диспетчеру подписок операцию очистки или отмены регистрации для sysprep

https://bugzilla.redhat.com/1060404
virt-resize не сохраняет имена разделов GPT

https://bugzilla.redhat.com/1057504
mount-local должен выдавать более четкую ошибку, если root не смонтирован

https://bugzilla.redhat.com/1056290
virt-sparsify перезаписывает блочные устройства, если они используются в качестве выходных файлов

https://bugzilla.redhat.com/1055452
libguestfs: ошибка: недопустимый сервер: устройство

https://bugzilla.redhat.com/1054761
guestfs_pvs печатает «неизвестное устройство», если физический том отсутствует

https://bugzilla.redhat.com/1053847
Рекомендуемые настройки часов / таймера по умолчанию

https://bugzilla.redhat.com/1046509
ruby-libguestfs выдает "ожидающий 0 или 1 аргумент" на Guestfs :: Guestfs.new

https://bugzilla.redhat.com/1045450
Невозможно полностью проверить образ диска cirros 0.3.1

https://bugzilla.redhat.com/1045033
LIBVIRT_DEFAULT_URI = qemu: /// система нарушает работу libguestfs

https://bugzilla.redhat.com/1044585
сеть virt-builder (например, --install) не работает, если resolv.conf устанавливает сервер имен
127.0.0.1

https://bugzilla.redhat.com/1044014
Когда установлен SSSD, конфигурация libvirt требует аутентификации, но не очищает
пользователю

https://bugzilla.redhat.com/1039995
virt-make-fs не может создать fat / vfat весь диск: ожидается раздел устройства, не создается
файловая система на всем устройстве '/ dev / sda' (используйте -I для переопределения)

https://bugzilla.redhat.com/1039540
virt-sysprep для удаления дополнительных файлов журнала

https://bugzilla.redhat.com/1033207
RFE: проверка libguestfs не распознает Live CD Free4NAS

https://bugzilla.redhat.com/1028660
RFE: virt-sysprep / virt-builder должен иметь возможность заблокировать учетную запись пользователя

https://bugzilla.redhat.com/1026688
libguestfs не может проверить гостевую libvirt с дисками ceph: rbd: имя образа должно начинаться
с '/'

https://bugzilla.redhat.com/1022431
virt-builder не работает, если $ HOME / .cache не существует

https://bugzilla.redhat.com/1022184
libguestfs: не использовать jar-файл с версией

https://bugzilla.redhat.com/1020806
Все операции LVM libguestfs завершаются сбоем в Debian / Ubuntu

https://bugzilla.redhat.com/1008417
Нужна помощь по обновлению part-set-gpt-type

https://bugzilla.redhat.com/953907
virt-sysprep неправильно устанавливает имя хоста в Debian / Ubuntu

https://bugzilla.redhat.com/923355
guestfish печатает букву "\ n" в сообщениях об ошибках.

https://bugzilla.redhat.com/660687
guestmount: команда "touch" не работает: touch: установка времени `timestamp ': недопустима
аргумент

https://bugzilla.redhat.com/593511
[RFE] функция для получения названия раздела

https://bugzilla.redhat.com/563450
list-devices возвращает устройства разных типов из строя

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.24


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.22.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Пользовательский режим Linux (UML) может использоваться как альтернативный сервер (например, вместо KVM). Этот
повышает производительность, особенно при использовании libguestfs внутри виртуальной машины (например, в облаке). UML
поддерживается как первоклассный бэкэнд. См. «ОБРАТНАЯ СВЯЗЬ LINUX в ​​ПОЛЬЗОВАТЕЛЬСКОМ РЕЖИМЕ» в гость(3) для
как это использовать.

ARM (32 бит) и PPC64 теперь полностью поддерживаются.

Инструменты

строитель добродетели(1) - это новый инструмент для создания образов виртуальных машин. Это позволяет быстро
и безопасно создавать гостей и настраивать их.

Новое вирт-sysprep(1) операции: удаление файлов в / Tmp и / Вар / TMP. Удалить базу данных RPM
файлы. Измените пароли root и пользователя. Другие файлы журнала удаляются. Новые операции, которые
не включены по умолчанию: создавать случайные UUID для файловых систем. Сбросить правила брандмауэра.
(Ванлун Гао)

виртуальное изменение размера(1) и virt-sysprep теперь могут использовать URI для указания удаленного диска.

Используйте "guestfish -N filename = type" для создания именованного образа диска (вместо стандартного
test1.img и т.д.).

вирт-разреженный(1) теперь проверяет, достаточно ли места на диске для завершения операции,
вместо того, чтобы, возможно, не хватить места на полпути.

виртуальный формат(1) и вирт-мейк-фс(1): новый --метка опция для установки метки файловой системы.

виртуальное изменение размера - не разреженный флаг может использоваться для изменения размера разделов и других целей, которые
не обнуляются.

Язык переплеты

Новые привязки для языка программирования Go.

API

Поддержка журнала systemd.

"guestfs_add_drive_opts" теперь может управлять режимом кэширования qemu через новый "cachemode"
параметр. Вы можете выбрать повышенную производительность для временных дисков или безопасность.

"guestfs_set_label" теперь работает для XFS и btrfs.

Новое событие GUESTFS_EVENT_WARNING для предупреждающих сообщений.

Инспекция

Лучше осмотр гостей SUSE (Олаф Геринг).

Лучшая поддержка нестандартной Windows% systemroot% (Мэтью Бут).

Расширенные отчеты об ошибках Augeas.

Безопасность.
CVE-2013-2124
https://bugzilla.redhat.com/show_bug.cgi?id=968306

При досмотре некоторых гостей был возможен отказ в обслуживании. Исправление было
бэкпортирован в ветки 1.20 и 1.22.

CVE-2013-4419
https://www.redhat.com/archives/libguestfs/2013-October/msg00031.html

Исправлена ​​небезопасная обработка временных каталогов для удаленного guestfish. Исправление было
бэкпортирован в ветки 1.20 и 1.22.

Новое API
add-drive-scratch: добавить временный рабочий диск
авг-лейбл
авг-сетм
journal-open: поддержка журнала Systemd
журнал закрытый
журнал-следующий
журнал-пропуск
журнал-получить
журнал-получение-данных-порог
порог набора данных журнала
remount: разрешить настройку флага rw на смонтированных файловых системах
set-uuid: установить UUID файловой системы

API "is-file", "is-dir", "is-blockdev", "is-chardev", "is-fifo", "is-socket" теперь имеют
дополнительный флаг "followsymlinks".

"add-drive" имеет новый параметр "cachemode".

Построить изменения
Для сборки libguestfs 1.24 требуются следующие пакеты:

Авгий ≥ 1.0.0

Следующие дополнительные пакеты могут быть добавлены для улучшения функциональности, но не
обязательный:

сд-журнал
Чтобы читать файлы журнала от гостей, которые это используют.

url_mkcow
Для бэкэнда UML.

виться
GPG
xz Для virt-builder.

голанг ≥ 1.1.1
Для языковых привязок Go.

Внутренности
Новые правила "make check- *" заменяют "make extra-tests". См. «Помочь» и гость(3) для


Код Perl теперь можно редактировать.

Код проверки теперь протестирован на фаззинг.

"make" больше не возвращается в каталог генератора во всех остальных каталогах. Этот
значительно снижает накладные расходы на сборку.

Дополнительные тесты для Augeas, hivex.

Добавьте 20-минутный тайм-аут запуска, ожидающий запуска устройства.

Добавьте таймаут (4 часа) ко всем тестам, чтобы мы могли поймать случай, когда qemu или другой
компоненты зависают.

Используйте kvmclock и "-cpu host". Это улучшает стабильность тактовой частоты и общую производительность.

Исправлен режим "./configure --enable-packet-dump".

Переписан режим "./configure --enable-valgrind-daemon". Теперь это возможно для
разработчикам всегда держать этот флаг включенным.

Бэкэнды были реорганизованы, чтобы стать модульными (хотя на самом деле они не загружаются
модули).

Когда этот параметр включен, сеть теперь использует конфигурацию резолвера (т. Е. / Etc / resolv.conf) С
хост.

ошибки фиксированной
https://bugzilla.redhat.com/1019889
libguestfs-tools.conf должна иметь справочную страницу

https://bugzilla.redhat.com/1018149
Ошибки valgrind в btrfs_subvolume_list

https://bugzilla.redhat.com/1002032
mke2fs не может вернуть правильный тип файловой системы, если количество блоков меньше 2048 для
ext3

https://bugzilla.redhat.com/1001876
Обновите справку "rsync-out" для использования подстановочных знаков

https://bugzilla.redhat.com/1001875
Аргумент исключает тар-аут не работает

https://bugzilla.redhat.com/1000428
virt-format использует неправильный тип раздела для файловых систем vfat

https://bugzilla.redhat.com/1000121
Команда 'sh' перед монтированием вызывает segfault демона

https://bugzilla.redhat.com/998513
guestfish не работает, когда вы смешиваете параметры --remote и --add

https://bugzilla.redhat.com/998482
Guestfish удаленно печатает "libguestfs: error: waitpid (qemu): No child process"

https://bugzilla.redhat.com/995711
Команда list-filesystems не работает, если нет блочных устройств

https://bugzilla.redhat.com/994517
cache = none / O_DIRECT обходной путь не работает для изображений с резервными файлами

https://bugzilla.redhat.com/989356
cap-get-file вернет ошибку, если для файла не установлены возможности

https://bugzilla.redhat.com/986877
RFE: реализовать команду set-uuid

https://bugzilla.redhat.com/986875
RFE: реализовать метку набора для xfs

https://bugzilla.redhat.com/985269
Невозможно установить значение acl для указанного пользователя с помощью 'acl-set-file'

https://bugzilla.redhat.com/983218
libguestfs удваивается, когда ссылка на ядро ​​не работает во время запуска

https://bugzilla.redhat.com/981715
Произвести сбой файловой системы xfs с указанным размером блока, выдает ошибку "unknown option -b"

https://bugzilla.redhat.com/981683
"hivex-commit" должен завершиться ошибкой с относительным путем

https://bugzilla.redhat.com/981663
disk-format "qemu-img info: ошибка синтаксического анализа JSON", когда целевой файл не существует

https://bugzilla.redhat.com/978302
mke2fs-J должен выдавать значимую ошибку, если указан любой тип, кроме
'ext {2,3,4}'

https://bugzilla.redhat.com/975797
Указание интерфейса virtio (параметр iface) нарушает прямую бэкэнд - libguestfs
виснет

https://bugzilla.redhat.com/975753
"virt-resize --expand" и "virt-resize --resize" выводят сообщение об ошибке для Win2008.
32bit OS

https://bugzilla.redhat.com/975412
осмотр: выражения Augeas нарушены с augeas> = 0.10

https://bugzilla.redhat.com/974904
virt-resize --expand не работает в облачном образе Ubuntu

https://bugzilla.redhat.com/974489
Регрессия: проверка Fedora прервана из-за изменения с guestfs_exists на guestfs_is_file

https://bugzilla.redhat.com/972775
Команда txz-out создает файл, сжатый bzip2 (должен быть сжат xz)

https://bugzilla.redhat.com/969845
загрузка в каталог иногда зависает вместо сбоя

https://bugzilla.redhat.com/968875
virt-sysprep должен поддерживать аргументы типа URL

https://bugzilla.redhat.com/624334
blockdev-setbsz завершается успешно, но не влияет на blockdev-getbsz

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.22


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.20.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
API

Удаленный доступ к дискам:

· Сетевое блочное устройство (nbd)

· Безопасная оболочка (ssh)

· HTTP и HTTPS

· FTP и FTPS

· ISCSI

· Гластер

· Ceph / rbd (Майк Келли)

· Овчарка

· ТФТП

Загрузчики SYSLINUX и EXTLINUX теперь могут быть установлены в образы дисков с помощью API.

Инспекция теперь может обрабатывать файловые системы, такие как btrfs, где подтомы находятся отдельно
монтируемый (Мэтью Бут).

«Методы присоединения» теперь известны как «бэкэнды». Совместимость с существующим кодом
сохранились.

Имена файлов могут содержать ":", если используется более новый QEMU.

Инструменты

Virt-alignment-scan и virt-df сканируют несколько гостей параллельно.

Guestmount теперь точно передает errno обратно в пространство пользователя почти во всех случаях.

Guestfish и другие инструменты теперь могут использовать URI-подобный синтаксис для доступа к удаленным дискам, например:

guestfish -a ssh: //example.com/path/to/disk.img

Guestfish и guestmount теперь позволяют указывать тип файловой системы при монтировании, что
безопаснее (Дэйв Василевский).

Guestfish теперь является «оболочкой гостевой файловой системы».

Guestfish допускает только 1 "true" "t" "yes" "y" "на" 0 "false" "f" "no" "n" "off" для логического
значения (без учета регистра) и выдает ошибку для всех остальных строк.

Новый инструмент "guestunmount" для безопасного отключения файловых систем FUSE.

Флаг "guestmount --no-fork" предотвращает демонизацию guestmount.

Virt-resize теперь по умолчанию использует разреженные копии, что значительно экономит место для гостей, которые
в основном пусты.

Завершение вкладок в Bash было переписано и теперь может обрабатывать большинство инструментов и правильно вкладывать
полные опции "--long". Кроме того, по запросу загружаются сценарии завершения bash.

Язык переплеты

API Java теперь поддерживает события.

Теперь объект Python наследуется от базового класса «объект».

Методы Python, которые ранее возвращали списки кортежей, теперь можно заставить возвращать
Python dict. Для обратной совместимости вы должны включить это, используя
параметр конструктора "guestfs.GuestFS (python_return_dict = True)".

Привязки PHP теперь протестированы должным образом, и в них было внесено несколько исправлений.

Удалена давно устаревшая библиотека Perl "Sys :: Guestfs :: Lib".
https://www.redhat.com/archives/libguestfs/2013-April/msg00001.html

Примеры

Новый пример программы, показывающий, как включить отладку и записывать сообщения журнала.

Другое

Дистрибьюторы могут добавлять произвольные дополнительные пакеты к устройству, выполнив:

./configure --with-extra-packages = "список имен пакетов"

Дистрибьюторы могут использовать:

./configure --with-supermin-extra-options = "..."

для добавления произвольных дополнительных опций в супермин.

Безопасность.
В этом выпуске не было обнаружено никаких проблем с безопасностью.

Новое API
ср-р
экстлинукс
функция доступна
Get-программа
это-целое-устройство
часть-получить-тип gpt
часть-набор-gpt-тип
переименовать
сет-программа
SYSLINUX

Только C:

Guestfs_event_to_string

Внутренности
Инструмент febootstrap был переименован в «supermin». Libguestfs может использовать и то, и другое, но
сейчас предпочитает «супермин». http://people.redhat.com/~rjones/supermin/

libxml2 требуется для сборки libguestfs.

Программа hivexregedit (из hivex) требуется для сборки из git.

Внутренние функции больше не могут использоваться, если вызывающий не определит "-DGUESTFS_PRIVATE = 1".

Включить предупреждения компилятора C в Python, привязки Ruby.

Сбой рано и четко, если libvirt не поддерживает qemu / KVM (например, если по умолчанию libvirt
подключение к Xen).

Правило "make print-subdirs", полезное для выборочного запуска тестов.

Несколько исправлений, позволяющих создавать отдельные (sourcedir! = Builddir) сборки.

Множественные исправления привязок Haskell.

API «ln» и «ln-f» теперь правильно фиксируют «errno».

Тесты языковой привязки используют (в основном) стандартную схему нумерации и стремятся проверить то же самое.
набор функций на каждом языке. Также уменьшено количество требуемых запусков.
поэтому эти тесты должны выполняться намного быстрее.

Код библиотеки внутренне использует GCC «__attribute __ ((очистка))» (если доступно) для упрощения
выделение памяти.

Реорганизованы внутренние файлы заголовков. См. Комментарии в SRC / guestfs-внутренний * .h

Внутренний код, совместно используемый библиотекой и некоторыми инструментами, теперь находится в статическом
Библиотека "libutils".

Почти все подкаталоги теперь могут использовать параллельные сборки, хотя обратите внимание, что верхний уровень
каталоги по-прежнему строятся последовательно.

Использование PATH_MAX и NAME_MAX исключено из кода.

Для Java API теперь требуется JVM ≥ 1.6.

Принудительное использование «серийных тестов» с автопроизводителем ≥ 1.12.

Использование сокетов на уровне протокола библиотеки является абстрактным, что позволяет другим, не относящимся к POSIX
слои, которые будут добавлены в будущем (см. src / conn-socket.c).

"qemu-img info --output json" используется, если доступно, для более безопасного анализа вывода.
этой команды.

Теперь дистрибутивы могут использовать команду make INSTALLDIRS = vendor install для размещения привязок Ruby в vendordir.
Это устраняет патч, не входящий в состав апстрима, который есть в Fedora и Debian.

Файлы журнала Valgrind теперь записываются в tmp / valgrind-DATE-PID.log

"make clean" очищает локальный каталог "tmp /".

Тесты C API были переписаны с использованием более гибкого языка генератора, который позволяет
произвольный код C, выполняемый во время тестов.

ошибки фиксированной
https://bugzilla.redhat.com/961812
Segfault в inspect-fs.c в монтируемом коде

https://bugzilla.redhat.com/957772
ошибка цитирования tar-out и base64-out

https://bugzilla.redhat.com/957380
libguestfs: ошибка: btrfsvol: / dev / sda2 / root: корневое устройство не найдено: вызовите только это
функция с корневым устройством, ранее возвращенным guestfs_inspect_os

https://bugzilla.redhat.com/948324
проверка не выполняется, если libosinfo не установлен

https://bugzilla.redhat.com/928995
файл в файле нулевого размера теперь выдает «пустой» вместо «пустой»

https://bugzilla.redhat.com/921292
qemu: не удалось открыть образ диска /tmp/.../snapshot1: В доступе отказано

https://bugzilla.redhat.com/921040
Сообщение "ошибка: сбой внешней команды, см. предыдущие сообщения об ошибках" необходимо изменить

https://bugzilla.redhat.com/920225
libguestfs следует использовать --output json (если поддерживается) для безопасного анализа вывода qemu-
команда img

https://bugzilla.redhat.com/916780
запрос функции: guestmount --with-cleanup-pipefd

https://bugzilla.redhat.com/914934
oom-killer убивает guestfsd, когда tar загружает много данных

https://bugzilla.redhat.com/914931
Команды FileIn вызывают segfault, если устройство умирает во время копирования файла в

https://bugzilla.redhat.com/913145
Различные утечки в virNetClientProgramCall в libvirt 1.0.2

https://bugzilla.redhat.com/912499
Контекст безопасности в файле изображения сбрасывается

https://bugzilla.redhat.com/909836
libguestfs-тест-инструмент --qemu segfaults

https://bugzilla.redhat.com/909624
Неожиданная рекурсия без хвоста в recv_from_daemon приводит к переполнению стека в очень
длительные вызовы API, отправляющие сообщения о ходе выполнения

https://bugzilla.redhat.com/908322
virt-tar завершается ошибкой при несуществующих именах каталогов в фрагментированной кодировке в
/ home / rjones / d / libguestfs / tools / virt-tar, строка 272. "

https://bugzilla.redhat.com/908321
virt-cat не работает с именами каталогов "/ dev / stdout: ошибка в фрагментированной кодировке"

https://bugzilla.redhat.com/907554
btrfs вызывает сбой последующей файловой системы ntfs-3g

https://bugzilla.redhat.com/905341
«Нет такого файла или каталога» при выполнении «hivex-commit»

https://bugzilla.redhat.com/903620
btrfs_subvolume_list не работает из-за изменения вывода списка подтомов

https://bugzilla.redhat.com/895910
гостевая установка: переименовать () неправильно следует по символическим ссылкам

https://bugzilla.redhat.com/895905
гостевая установка: ссылка на сайт() неправильно возвращает ENOENT, тогда как должно быть EXDEV

https://bugzilla.redhat.com/895904
контрольная сумма не может вычислить контрольные суммы всех обычных файлов в каталоге

https://bugzilla.redhat.com/894545
libguestfs FTBFS на Fedora 19 из-за нового рубина

https://bugzilla.redhat.com/890027
virt-sysprep: правильная установка имени хоста, имени домена и красивого имени в Fedora 18

https://bugzilla.redhat.com/887971
pvcreate не работает, если раздел содержит подпись подкачки

https://bugzilla.redhat.com/887520
zero_free_space: open: /sysroot//ujqqq135.rd3: невозможно выделить память

https://bugzilla.redhat.com/886915
libguestfs с методом присоединения libvirt завершается с ошибкой, если гипервизор по умолчанию
Xen

https://bugzilla.redhat.com/847549
Добавление диска virtio-scsi нулевой длины вызывает: qemu-kvm: hw / scsi-bus.c: 1568:
scsi_req_complete: утверждение `req-> status == -1 'не выполнено.

https://bugzilla.redhat.com/811649
libguestfs не может открывать образы дисков, которые являются символическими ссылками на файлы, содержащие ':'
(двоеточие) символ

https://bugzilla.redhat.com/664558
RFE: позволяет установить обратный вызов журнала в привязках Ruby

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.20


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.18.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Libvirt и свирт (SELinux заключение)

Вы можете опционально используйте libvirt для запуска и управления серверным устройством:

· Установка "LIBGUESTFS_ATTACH_METHOD = libvirt [: URI]"

· Используя "./configure --with-default-attach-method = libvirt [: URI]"

· Или вызывая метод API "guestfs_set_attach_method"

SVirt (ограничение SELinux) используется для защиты устройства libguestfs, если libvirt
бэкэнд выбран.

виртуальный scsi, больше номер of диски, горячее подключение

Virtio-scsi теперь используется по умолчанию, если он доступен. Это значительно увеличивает количество
дисков, которые можно добавить к одному дескриптору libguestfs (до 255).

Теперь вы можете подключать диски в горячем режиме (добавлять и удалять диски после запуска).

Libguestfs теперь может обрабатывать> 25 дисков во всех API, инструментах и ​​тестах.

Вы можете пометить диски при их добавлении, а затем ссылаться на них по метке
(/ dev / disk / guestfs / ЭТИКЕТКА) вместо того, чтобы использовать имена устройств (/ Dev / ПДД).

новый библиотека функции

Списки контроля доступа POSIX (ACL) и возможности файловой системы Linux теперь могут быть прочитаны и
написано через API.

Теперь поддерживаются динамические диски Windows. Метаданные можно только читать (тома не могут быть
изменен или создан). Однако данные / файловые системы в самих томах могут быть
установлен, прочитан и написан (Мэтью Бут).

Hivex (редактирование реестра Windows) теперь напрямую поддерживается через API, что делает чтение
или редактирование реестра Windows намного эффективнее.

Несколько API-интерфейсов libguestfs были переопределены, поэтому у них больше нет ограничений на вывод.
Переопределенные API: "guestfs_cat", "guestfs_find", "guestfs_read_file",
"guestfs_read_lines", "guestfs_write", "guestfs_write_append", "guestfs_lstatlist",
"guestfs_lxattrlist", "guestfs_readlinklist", "guestfs_ls".

добродетель инструменты

"guestfish touch 'win: c: \ new_file'" теперь работает должным образом.

у "guestfish" появился новый --сеть опция, которая включает пользовательскую сеть в libguestfs.

Вы можете установить «GUESTFISH_PS1», чтобы использовать необычные подсказки в «guestfish».

Команды «rsync», «ssh», «less» и «lrzip» теперь доступны в virt-rescue. В
Кроме того, «rsync» можно использовать через API для создания инкрементных копий.

"virt-sparsify" использует qcow2 v3 для повышения эффективности.

Усовершенствования "virt-sysprep":

· Генерировать новые UUID для PV и VG

· Удалить идентификатор локальной машины (Ванлун Гао)

· Удалить данные ABRT (Ванлун Гао)

· Удалить ключи марионетки и файлы журналов (Ванлун Гао)

· Удаление файлов учета процессов (Ванлун Гао)

· новый - первая загрузка параметр, разрешающий скрипты firstboot для настройки гостей

· Удалить поле HOSTNAME из файлов "ifcfg-eth *" (Ванлун Гао)

· Прочие улучшения для SuSE (Олаф Геринг)

· Удалить кеш страниц руководства (Ванлун Гао)

· Удалить данные о сбоях, генерируемые kexec-tools (Wanlong Gao)

"virt-make-fs" теперь может создавать виртуальные гибкие диски (VFD).

"guestmount" имеет --pid-файл вариант, который можно использовать, чтобы избежать состояния гонки между
размонтирование файловой системы и использование основного образа диска.

язык переплеты

В этот выпуск добавлены полнофункциональные привязки Lua (спасибо Джерому Вуаранду за
много предложений).

В Ruby хэш необязательных аргументов не является обязательным.

В Python для необязательных аргументов теперь не используются специальные "контрольные" значения, поэтому любое целое число может
быть переданным как необязательный аргумент.

Привязки Erlang теперь содержат примеры и тесты.

Привязки Erlang теперь правильно обрабатывают 64-битные целочисленные параметры.

Автоматические тесты связывания теперь проверяют 64-битную чистоту передачи параметров. Несколько
В результате были обнаружены и исправлены ошибки в привязках.

Лучшая обработка блокирующих и неблокирующих функций должна сделать вызовы libguestfs более эффективными.
эффективный.

проверка

Теперь поддерживаются гостевые системы Windows с реестрами неограниченного размера. Добавив hivex API
к API libguestfs, гораздо эффективнее и проще проверять и изменять
Реестр Windows в гостях.

Лучшая поддержка для гостей SuSE (Олаф Херинг).

Вернуть архитектуру установленных приложений (Джон Экерсберг).

Windows 8 теперь поддерживается.

Fedora 18 теперь поддерживается.

Для проверки ISO / CD / DVD теперь можно использовать базу данных libosinfo.

порты

Libguestfs без устройства можно скомпилировать в Mac OS X (Masami HIRATA).

RHEL 5 теперь явно поддерживается веткой oldlinux в восходящем потоке git.

Теперь поддерживается 64-разрядная версия PowerPC. Также libguestfs был проверен на предмет ошибок порядка байтов.
и они были исправлены.

демон

Страница руководства для демона (гость(8)) включен.

Безопасность.
рыба-гость история файл

Команда $ HOME / .guestfish файл истории теперь создается с разрешениями 0600 (вместо 0644
раньше), поэтому он больше не читается миром.

CVE-2012-2690

Старые версии команд "virt-edit" и "guestfish" "edit" создали новый файл.
содержащие изменения, но не установили разрешения и т. д. для нового файла в соответствии с
Старый. Результатом этого было то, что если вы редактировали чувствительный к безопасности файл, такой как
/ И т.д. / тень тогда он будет доступен для чтения после редактирования.

Этой проблеме был присвоен CVE-2012-2690, и она исправлена ​​в libguestfs ≥ 1.16.

Для получения дополнительной информации см. Https://bugzilla.redhat.com/show_bug.cgi?id=788642.

Новое API
acl-delete-def-файл
acl-get-файл
acl-set-файл
каноническое-имя-устройства
кепка-получить-файл
cap-set-файл
создать флаги
индекс устройства
диск имеет резервный файл
формат диска
виртуальный размер диска
доступная файловая система
заполнить-директор
fstream
Get-cachedir
получить-libvirt-запрошенные учетные данные
получить-libvirt-запрошенные учетные-подсказки
получить-libvirt-запрошенные учетные-вызов
получить-libvirt-запрошенные учетные данные defresult
получить-tmpdir
улей-закрыть
hivex-коммит
hivex-узел-добавить-дочерний
улей-узел-дети
hivex-узел-удалить-ребенка
hivex-узел-получить-ребенка
улей-узел-получить-значение
имя-узла-улья
улей-узел-родитель
hivex-node-set-значение
значения узлов улья
улей-открытый
корень куста
ключ-значение-ульи
улей-значение-тип
значение hivex-utf8
ценность улья
inspect-list-applications2 (Джон Экерсберг)
список-LDM-томов
список-ldm-разделов
ldmtool-create-все
ldmtool-diskgroup-диски
ldmtool-diskgroup-имя
ldmtool-diskgroup-тома
ldmtool-удалить все
ldmtool-сканирование
ldmtool-scan-устройства
ldmtool-volume-подсказка
ldmtool-volume-разделы
ldmtool-тип тома
ls0
макс-диски
mke2fs (Ванлун Гао)
потерянный и найденный
mkswap [добавлены дополнительные аргументы label и uuid]
mktemp (Ванлун Гао)
nr-устройства
синтаксический анализ
список-синтаксического анализа
пм-ф
Rsync
rsync-вход
rsync-выход
set-cachedir
набор-libvirt-поддерживаемые учетные данные
установить-libvirt-запрошенные учетные данные
set-tmpdir
выключение [перенесено на 1.16 и 1.18]
tar-in [добавлен флаг сжатия]
tar-out [добавлен compress, numericowner, исключает флаги]
umount [добавленная сила и ленивые необязательные аргументы]
утснаме
xfs-admin (Ванлун Гао)
xfs-growfs (Ванлун Гао)
xfs-info (Ванлун Гао)
xfs-repair (Ванлун Гао)

Только в C API:

Guestfs_push_error_handler
Guestfs_pop_error_handler

Внутренности
Требуется qemu ≥ 1.1 (желательно ≥ 1.2).

febootstrap ≥ 3.20 не требуется.

libvirt не является обязательным, но если вы хотите использовать новый бэкэнд libvirt для запуска
устройство, то потребуется libvirt ≥ 0.10.2.

Coverity была обработана для всей кодовой базы, и многие проблемы исправлены (спасибо Ondrej
Васик, Камиль Дудка).

Функции, которые раньше не имели optargs, теперь могут быть преобразованы в функции с optargs,
сделать расширение API более гибким. Исходная и двоичная обратная совместимость
сохраняется для пользователей API.

Изменился способ представления API и структур libguestfs в генераторе.
использовать структуру OCaml вместо кортежа. Это делает описания генераторов более подробными.
гибкий и понятный. Подробнее см. Коммиты 39d1a7db и eb185eef.

Разделение кода библиотеки на несколько файлов:

· Бэкэнды запуска теперь находятся в отдельных файлах, например. src / launch-appliance.c,
"src / launch-libvirt.c".

· Сгенерированный код действия теперь разделен на несколько SRC / действие * .c файлы, для более быстрого
сборник.

· Огромный src / guestfs.c файл теперь разделен на более мелкие логические блоки.

POD (документация) теперь генерируется с использованием переписанной программы Perl вместо pod2 * +
сценарии оболочки.

Страницы руководства теперь содержат стабильные даты (Хилко Бенген).

Пропущенные тесты теперь завершаются с кодом 77, поэтому они отображаются как «SKIP:» в выводе «make check».

Параллельный локальный тест был переписан на C (RHBZ # 838081).

Теперь поддерживается Ruby 1.8.5 (хотя Ruby ≥ 1.9 предпочтительнее).

Привязки Perl можно отключить с помощью "./configure --disable-perl" (Вульф К. Крюгер). Примечание
что Perl все еще требуется для сборки libguestfs.

Привязки Java теперь включаются / выключаются с помощью "./configure --with-java" или "./configure
--without-java "(Вульф К. Крюгер).

Новые параметры конфигурации "./configure --enable-code-profiling" и "./configure"
- включить-код-покрытие ".

Множественные исправления для использования 64-битных целых чисел в языковых привязках.

Серверная часть устройства теперь использует sgabios вместо vgabios (Дэн Берранж).

Файл "./ бежать"скрипт теперь устанавливает достаточно переменных среды, чтобы вы могли запускать OCaml, Python,
Программы на Ruby, Java, GJS, Erlang, Lua.

"./ бежать --test "флаг для запуска тестов с минимальным выводом. Он также печатает затраченное время
для запуска каждого теста.

Файл "./ бежать«скрипт теперь создает пути кумулятивно, что означает, что вы можете их использовать»./ бежать"
дважды или используйте libguestfs и libvirt "./ бежать"скрипты вместе.

Вы можете извлечь список внешних команд, требуемых демону, что сделает сборку
проще работать с некоторыми дистрибутивами (Олаф Геринг).

Команда «virt-rescue» теперь проверяется во время «make check».

Генератор теперь удаляет неиспользуемые сгенерированные файлы. Это помогает при движении вперед и назад
с помощью git rebase, git bisect и т. д.

Теперь тесты выполняются в отдельном каталоге верхнего уровня «tmp /» в исходном коде. Это позволяет
каталог, который должен быть помечен для SELinux (sVirt), а также упрощает очистку.

"make syntax-check" теперь работает в большей степени, и многие проблемы в основном коде,
были найдены с помощью синтаксической проверки, были исправлены (спасибо Джиму Мейерингу).

К сгенерированным файлам добавлен режим Emacs (- * - foo - * -).

Вывод индикатора выполнения теперь отправляется на / dev / tty поэтому он не попадает в обычный вывод
программа. virt-resize и virt-sparsify теперь подавляют индикаторы выполнения, если stdout не является
телетайп

Теперь есть опция "./configure --without-libvirt". Это полезно для проверки того, что
код по-прежнему компилируется без libvirt.

Теперь есть внутренняя мини-библиотека для запуска команд. Это позволяет нам перенаправить
ошибки из внешних команд в события.

Код для работы с временными каталогами и кешем устройства был полностью переработан.

Код для временного игнорирования / отключения ошибок теперь выглядит так:

guestfs_push_error_handler(g, NULL, NULL);
guestfs_mkdir (g, "/ foo"); / * Нам все равно, если это не удастся. * /
guestfs_pop_error_handler (г);

Каталог "tests / extra" пропал. «Дополнительные тесты» теперь разделены на отдельные
запускаемые цели, такие как "make check-valgrind". Используйте команду make help, чтобы получить сводку
целей.

Параметр «lpj» передается ядру устройства при использовании TCG. Это должно улучшить
стабильность часов (спасибо Марсело Тосатти, Олафу Герингу).

ошибки фиксированной
https://bugzilla.redhat.com/882417
Инструменты libguestfs выдают странные сообщения об ошибках, если TMPDIR не является абсолютным путем

https://bugzilla.redhat.com/882299
Невозможно смонтировать гостевые диски Windows 8: «Раздел NTFS находится в небезопасном состоянии.
Пожалуйста, возобновите работу и полностью выключите Windows (без гибернации или быстрого перезапуска) или смонтируйте
том доступен только для чтения с опцией монтирования 'ro'. "

https://bugzilla.redhat.com/881953
libguestfs: переход на / И т.д. / имя хоста, /etc/vconsole.conf, /etc/locale.conf

https://bugzilla.redhat.com/880801
virt-df с двумя параметрами -a отображает неправильное имя образа диска

https://bugzilla.redhat.com/879416
libguestfs-test-tool приостанавливается, когда вы используете параметр --help

https://bugzilla.redhat.com/876579
API mke2fs не применяет преобразование имен блочных устройств к journaldevice optarg

https://bugzilla.redhat.com/860235
Политика SELinux должна разрешать qemu писать в unlimited_u: object_r: user_tmp_t: s0

https://bugzilla.redhat.com/859949
RFE: inspect-list-applications не возвращает архитектуру пакетов RPM

https://bugzilla.redhat.com/859885
inspect-list-applications не перечисляет все установленные пакеты RPM с тем же именем и
разные версии

https://bugzilla.redhat.com/859876
Печатные пути guestfish не канонизированы

https://bugzilla.redhat.com/859875
Вывод индикатора выполнения должен идти на tty (?) Stderr (?)

https://bugzilla.redhat.com/858696
virt-sysprep сообщает Guestfs.Error ("read_lines: fopen: / etc / sysconfig / network: Нет такого
файл или каталог ") на некоторых гостевых системах Fedora

https://bugzilla.redhat.com/858128
libguestfs не может перечислить устройства, добавленные с помощью add-drive-ro-with-if дважды

https://bugzilla.redhat.com/858126
virt-Inspector не работает с некоторыми гостями Windows

https://bugzilla.redhat.com/853762
virt-sparsify должен использовать более надежный метод для определения входного формата

https://bugzilla.redhat.com/853393
libvirt не маркирует консоль, последовательные сокеты

https://bugzilla.redhat.com/853159
virt-rescue в Fedora 18 полностью не работает

https://bugzilla.redhat.com/852394
Проверка libguestfs ограничивает реестры до 100 МБ

https://bugzilla.redhat.com/852194
virt-sparsify --compress терпит неудачу, если вывод в необработанном формате

https://bugzilla.redhat.com/847881
RFE: разрешить дополнительные аргументы (например, --exclude) для исключения

https://bugzilla.redhat.com/847880
tar-out должен разрешать (или заставлять) --numeric-owner

https://bugzilla.redhat.com/845522
Команда guestfish "copy-out / localdir" завершается с ошибкой "Нет такого файла или каталога"

https://bugzilla.redhat.com/845488
Длинные имена файлов в NTFS приводят к сбою tar-out, copy-out и т. Д. С ошибкой «Cannot open:
Слишком длинное имя файла "

https://bugzilla.redhat.com/842307
RFE: нужна помощь в разработке и реализации политики selinux для libguestfs / sVirt

https://bugzilla.redhat.com/840572
virt-make-fs / tar-in должен правильно поддерживать vfat

https://bugzilla.redhat.com/840115
Проблема касания guestfish - API case_sensitive_path ожидает, что файл существует

https://bugzilla.redhat.com/836710
Потеря данных при записи в файлы на диске формата qcow2

https://bugzilla.redhat.com/834712
lvresize, lvresize-free потерпят неудачу без необходимости, если вы не измените размер LV:
«Новый размер (nn экстентов) соответствует существующему размеру (nn экстентов)»

https://bugzilla.redhat.com/824716
Compress-device-out не поддерживает bzip2

https://bugzilla.redhat.com/824043
Неизвестная опция монтирования guestfish выдает запутанное сообщение об ошибке

https://bugzilla.redhat.com/823887
Имена файлов, содержащие китайские символы, не могут быть созданы в файловых системах vfat

https://bugzilla.redhat.com/823885
virt-make-fs не может создать файловую систему vfat, содержащую файловые системы с китайским языком.
символы

https://bugzilla.redhat.com/823883
virt-make-fs -t fat выдает непонятное сообщение об ошибке

https://bugzilla.redhat.com/823821
Проверка не выполняется, если / etc / HOSTNAME пуст

https://bugzilla.redhat.com/801117
libguestfs не может получить значок для Windows 8

https://bugzilla.redhat.com/798979
Установочные компакт-диски Ubuntu, начиная с Oneiric, не распознаются: "многозагрузочная работа".
системы не поддерживаются "

https://bugzilla.redhat.com/782167
libguestfs не распознает динамические диски Windows в некоторых конфигурациях, например. охватывал

https://bugzilla.redhat.com/713678
Не все сообщения febootstrap перенаправляются в обратные вызовы журнала

https://bugzilla.redhat.com/627675
Код инспектора libguestfs не может обрабатывать / dev / диск / по-идентификатору /* пути

https://bugzilla.redhat.com/602997
part-get-bootable дает неправильный результат с неупорядоченной компоновкой деталей

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.18


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.16.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
добродетель инструменты

- virt-sysprep был переписан и расширен (спасибо Ванлун Гао)
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
устройства и группы томов

- virt-alignment-scan, запускается без аргументов, отображает информацию о выравнивании
для всех доменов libvirt

- virt-df и virt-alignment-scan будут отображать информацию со всех
гости даже когда диск недоступен

- virt-rescue new - опция --scratch для создания рабочих дисков
https://rwmj.wordpress.com/2012/04/26/virt-rescue-scratch/#content

- virt-make-fs теперь можно использовать для создания btrfs

- virt-edit сохраняет разрешения, UID, GID и контекст SELinux
при редактировании файлов

- guestfish правильно передает событие закрытия через стандартный вывод и удаленный

- guestfish новая опция '--pipe-error' позволяет обнаруживать ошибки в трубе
команды

- шары guestfish теперь расширяют имена устройств

- символы запятой и двоеточия в именах файлов теперь правильно обрабатываются
все инструменты virt

проверка

- добавлена ​​поддержка Fedora 17+

- добавлена ​​поддержка FreeDOS

- добавлена ​​поддержка Buildroot и Cirros

- проверка теперь совместима с гостями Windows, которые были
sysprepped (спасибо Гранту Уильямсону).

API

- добавлена ​​широкая поддержка btrfs, включая добавление нескольких устройств,
fsck, снимки (спасибо Ванлун Гао)

- новый 'mount-local' API обеспечивает поддержку FUSE непосредственно в
основной API libguestfs
https://rwmj.wordpress.com/2012/05/14/tip-using-mount-local-api-from-c/#content

- новая страница руководства: Guestfs-производительность(1), который содержит производительность
советы по настройке
http://libguestfs.org/guestfs-performance.1.html

- новая страница руководства: Guestfs-часто задаваемые вопросы(1), часто задаваемые вопросы
http://libguestfs.org/guestfs-faq.1.html

- ENOTSUP (от guestfs_last_errno) теперь возвращается для API, которые
не поддерживаются

Примеры реализованных проектов

- Пример copy_over, показывающий, как копировать между двумя ручками

- программа display_icon отображает значок, связанный с гостем

- Пример 'mount_local.c' показывает, как использовать API-интерфейс mount-local

Безопасность.
(в этом выпуске не было обнаружено или исправлено никаких проблем с безопасностью)

Новое API
btrfs-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 в API.
ntfsclone-in, ntfsclone-out: сохранить, восстановить NTFS из резервной копии.
ntfsfix: исправить распространенные ошибки и заставить Windows проверять NTFS.
set-e2attrs: устанавливает или очищает атрибуты файла ext2 для файла.
set-e2generation: Установить создание файла ext2 для файла.
set-label: Единый интерфейс для установки метки файловой системы.
vgmeta: получить метаданные группы томов.
wipefs: стереть подписи файловой системы с устройства.
zero-free-space: нулевое свободное пространство в файловой системе.

Внутренности
- Подкаталог debian / был удален. Мы рекомендуем вам использовать
официальные пакеты Debian, созданные Хилко Бенгеном.
http://people.debian.org/~bengen/libguestfs/
http://packages.debian.org/search? ключевые слова = libguestfs

- O_CLOEXEC / SOCK_CLOEXEC теперь используется почти для всех файлов
дескрипторы, которые открывает библиотека.

- posix_fadvise вызывается при последовательном чтении или записи больших
файлы.

- закрыть все файловые дескрипторы и удалить все обработчики сигналов в
процесс восстановления

- исправлены множественные предупреждения gcc и ошибки Coverity; много
также были исправлены ошибки строгого переполнения

- используйте ./configure --enable-valgrind-daemon, чтобы использовать valgrind на
демон; исправлено много ошибок

- используйте ./configure --with-qemu-options, чтобы передать дополнительные параметры в qemu

- у демона теперь есть растущий тип буфера строк (DECLARE_STRINGSBUF)

- в заголовочный файл работает с C ++ и у нас есть регресс
тест на это

- несколько API, которые теперь должны вызываться только в состоянии CONFIG
дать ошибку, если они не

- .gitignore исправлено для использования абсолютных путей

- привязки gobject были расширены, включая отображение libguestfs
события для сигналов gobject (спасибо Мэтту Буту)

- документация gobject создана правильно (спасибо Мэтту Буту)

- файлы заголовков gobject теперь находятся в подкаталоге

- Теперь в генераторе работает тест CompareWithString

- Типы полей структуры FUInt32, FUInt64 теперь используют правильный тип XDR

- Тесты OCaml теперь выполняются с байт-кодом и собственным кодом.

- java -Xlint: все используется, и все предупреждения исправлены

- bmptopng, wrestool (и т. д.) отсутствует или сбой больше не печатает
предупреждающие сообщения

- ruby: используйте RbConfig вместо Config.

- PYTHONPATH устанавливается файлом./ бежать скрипты.

- построение устройства теперь является потокобезопасным.

- теперь устройство использует ip вместо ifconfig и netstat
команды

- несколько исправлений для правильной работы параллельных сборок

- guestfish --listen теперь очищается правильно

- состояние BUSY удалено

- gettextize удален, заменен простым Makefile.am

- поддержка gettext теперь охватывает virt-resize, virt-sparsify и virt-sysprep

- лучшая поддержка архитектуры руки

ошибки фиксированной
- 822490 ошибка virt-ls: «libguestfs: error: контрольная сумма: путь: параметр не может быть NULL»
- 816839 ошибка переполнения данных при отладке -1
- 816098 virt-make-fs не может создать файловую систему btrfs, потому что она не выделяет достаточно места
- Проверка 811872 не удалась на гостевой системе ubuntu 10.04 с зашифрованным свопом.
- 811650 guestfs_last_error не устанавливается, когда qemu дает сбой на ранней стадии запуска
- 811649 libguestfs не может открывать образы дисков, которые являются символическими ссылками на файлы, содержащие символ ':' (двоеточие).
- 811117 [RFE] [virt-sysprep] net-hwaddr не удаляется из файлов "ifcfg- *" на rhel
- 811112 [RFE] [virt-sysprep] имя хоста не может быть изменено в системе rhel
- 809361 проверка не распознает Fedora 18 (grub2 + GPT)
- Параметр размера блока 807905 mkfs не работает при создании btrfs
- 805070 virt-filesystems должны отображать «родителей» LV и RAID-устройств.
- 804464 libguestfs не может быть собран, если LINGUAS отличается от ja или uk
- 803664 проверка libguestfs завершилась неудачно в Windows XP: libguestfs: error: hivex: не удалось найти HKLM \ SYSTEM \ MountedDevices
- 803533 guestfish: ошибка записи
- 802389 обработчики событий для события закрытия не работают в удаленном режиме.
- 802109 libguestfs использует putc на stderr, что приводит к множеству отдельных 1-байтовых записей отладочных сообщений.
- 801640 [RFE] ошибка, сообщаемая resize2fs-M, должна быть более четкой.
- 801298 Возможное разыменование нуля и утечка ресурсов
- 801273 Необходимо обновить документ для set-pgroup
- 798196 virt-resize путает переменные формата и output_format; использование --output-format устанавливает формат ввода
- 797986 virt-resize в Windows XP в состоянии sysprep вызывает BSOD "UNMOUNTABLE_BOOT_VOLUME"
- 796520 [RFE] Запретить пользователю запускать некоторые команды настройки устройства после загрузки устройства.
- 790721 ошибка сборки нескольких провайдеров: RuntimeError: ссылка: /tmp/.guestfs-0/kernel /tmp/.guestfs-0/kernel.10139: файл существует
- 789960 guestfsd сбой при попытке смонтировать несуществующий диск
- 789504 virt-df (другие инструменты?) Не должен сдаваться, если гостевой диск отсутствует
- 788641 virt-edit не сохраняет права доступа к файлам
- 786215 проверка libguestfs не распознает операционную систему FreeDOS
- 786188 проверка libguestfs не распознает установочный компакт-диск FreeDOS.
- 785668 aug-defnode: сбой демона
- 784647 Libguestfs использует устаревшие сетевые инструменты.
- 769304 virt-resize в ядре RHEL 6 не может повторно прочитать таблицу разделов
- 755729 Сообщение об ошибке для resize2fs-M требует настройки.
- 701814 virt-win-reg не работает на гостевой системе libvirt, у которой нет определенного формата диска: «параметр формата пуст или содержит недопустимые символы»
- 679737 libguestfs: улучшено сообщение об ошибке, когда zerofree недоступен в устройстве.
- 635971 glob mkfs ext2 / dev / vd [bt] 1 не расширяется

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.16


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.14.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
libguestfs

- разрешить создание файловых систем XFS поверх существующей файловой системы
(Ванлун Гао)

- (не указано) выравнивание по умолчанию для частичного диска было
изменено на 64 КБ для лучшей поддержки высокопроизводительных сетевых
диск

- Новые Guestfs-тестирование(1) справочная страница

- list-filesystems возвращает MD-устройства, содержащие файловые системы
(Мэтью Бут)

- поддержка GCC> = 4.7 (Джим Мейеринг)

- проверьте, что пользователь не добавляет один и тот же диск дважды (Ванлун Гао).

язык переплеты

- Экспериментальные привязки GObject с поддержкой GObject
Самоанализ. Теперь вы можете использовать libguestfs из Javascript.
Обратите внимание, что в этом выпуске они не являются стабильными и окончательными.
(Мэтью Бут).

- поддержка Ruby> = 1.9

- Привязки Ruby могут быть отключены индивидуально (Хилко Бенген)

- поддержка Python 2.6, 3.x (Ричард Джонс, Хилко Бенген)

- поддержка PHP> = 5.4

- новый хэш% guestfs_introspection доступен в привязках Perl, поэтому
вы можете запросить, какие дополнительные аргументы доступны

проверка

- гости с MD-устройствами могут быть осмотрены (Мэтью Бут)

- поддержка гостей GNU / Hurd

рыба-гость

- события libguestfs (например, события индикатора выполнения и сообщения журнала) могут
быть захваченными и обработанными пользовательскими сценариями оболочки.

- MD-устройства заполняются табуляторами (Мэтью Бут)

добродетель инструменты

- Новый инструмент virt-format для стирания и создания чистых дисков.

- virt-sparsify новые параметры --compress и -o для сжатия
и другой формат вывода

- virt-sparsify теперь может обнаруживать и разбивать файлы .vdi.

- virt-sysprep больше не требует xmlstarlet; новый вирт-инспектор --xpath
была добавлена ​​опция для замены этой функциональности

- virt-rescue имеет новую опцию --suggest, которая предлагает команды монтирования
для гостя

- virt-resize больше не требует библиотеки OCaml pcre

libguestfs жить

- демон больше не будет пытаться редактировать вашу live / etc / lvm конфигурацию

- исправить потенциальную проблему безопасности с помощью предсказуемой / Tmp имена (Стив Кемп)

Безопасность.
CVE-2011-4127, RHBZ № 757071.
Уменьшите возможное повышение привилегий с помощью SG_IO ioctl
For more information, see: https://github.com/libguestfs/libguestfs/commit/9a5f784d511a8f00a8386f316eab41fe660430db

Новое API
blkid: распечатать все атрибуты устройства, известного blkid (Ванлун Гао)
e2fsck: доступ к дополнительным функциям e2fsck (Ванлун Гао)
list-md-devices: список MD-устройств Linux (Мэтью Бут)
md-create: создать MD-устройство
md-detail: возвращает метаданные для MD-устройства (Мэтью Бут)
md-stop: остановить MD-устройство (Ванлун Гао)
tune2fs: разрешить настройку файловых систем ext2 / 3/4

Внутренности
Хостинг Git переехал на http://github.com/libguestfs

Различные каталоги тестов были логически переставлены, и теперь
все отображаются в разделе «тесты /».

Существует правило «сделать дополнительные тесты», которое запускает обычные тесты и
дополнительные тесты с использованием valgrind для проверки проблем с памятью.

Valgrind обнаружил и исправил множественные утечки памяти и другие проблемы.

Переписана поддержка необязательных аргументов в генераторе.
для обеспечения большего количества функций и безопасности (Мэтью Бут).

С gcc -fvisibility = hidden используется для внутренних символов, избегая
переадресация вызова через PLT.

Функции RHashtable можно тестировать в генераторе.

Макрос ADD_ARG в демоне позволяет создавать списки аргументов без
риск разрушения стека.

Исправьте создание функций OCaml с более чем 10 аргументами.

psmisc был добавлен к устройству, что позволяет использовать 'fuser',
killall и pstree для отладки.

bindtests теперь охватывает RBufferOut и необязательные аргументы (Мэтью Бут).

ошибки фиксированной
- 769680 временных каталогов, созданных во время сборки устройства, не очищаются при ошибке
- 761460 guestfs_utimens зависает на именованных каналах
- 761451 guestfs_utimens не может устанавливать время для каталога.
- 760775 "guestfish: мультизагрузочные операционные системы не поддерживаются параметром -i" должно быть более пояснительным.
- 760669 копий гостевой рыбы и
- 760000 libguestfs не компилируется с Ruby> = 1.9
- 755729 Сообщение об ошибке для resize2fs-M требует настройки.
- 750889 Код Python несовместим с Python v3.
- 596761 Ctrl- \ вызывает прерывание guestfish

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.14


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.12.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
Привязки Erlang.

virt-alignment-scan - это новый инструмент для проверки выравнивания
разделы виртуальных машин или образов дисков.

virt-sparsify - это новый инструмент для создания образов дисков виртуальных машин.
скудны.

virt-sysprep - это новый инструмент для клонирования гостей из шаблона
проще.

рыба-гость

- Новые команды setenv, unsetenv для установки переменных окружения.

- Входной файл и номер строки печатаются в сообщениях об ошибках.

- индикаторы прогресса guestfish теперь являются «мини-библиотекой», используемой другими
инструменты тоже.

гостевая гора

- опция --live (для доступа к живым виртуальным машинам) теперь работает.

виртуальный кот

- virt-cat теперь может обрабатывать пути и буквы дисков Windows (RHBZ # 693359).

виртуальные файловые системы

- байт типа раздела MBR отображается в --long output.

вирт-мейк-фс

- virt-make-fs теперь правильно устанавливает байт типа раздела MBR,
улучшение совместимости с Windows (RHBZ # 746295).

виртуальное изменение размера

- virt-resize теперь может работать с гостями, используя расширенный и логичный
разделы, в частности гости Ubuntu.

- virt-resize теперь может выровнять первый раздел гостей Windows,
повышение производительности. Новая опция virt-resize --align-first
контролирует это поведение.

- Флаг virt-resize --machine-readable позволяет использовать
virt-resize из других программ.

- Разделы теперь выровнены по 128 секторам (обычно 64 КБ)
дефолт. Это повышает эффективность высокопроизводительной системы хранения. Новый
Параметр virt-resize --alignment позволяет выравнивать
отрегулированы.

Вирт-победа-рег

- Синтаксис для удаления ключей и значений реестра задокументирован.
на странице руководства (RHBZ # 737944).

библиотека

- непечатаемые символы правильно экранируются при отладочном выводе.

- GUESTFS_EVENT_ENTER - это новый тип события, генерируемый всякий раз, когда
Вызывается функция libguestfs.

- библиотека содержит зонды systemtap / DTrace.

- библиотека теперь может быть скомпилирована без hivex (RHBZ # 723474).

проверка

- Улучшено обнаружение дисков Windows.

- Добавлена ​​поддержка:
ttylinux - минимальный Linux
Mageia (спасибо Майклу Шереру)
OpenSUSE и zypper (спасибо Майклу Шереру, Винсенту Унцу)
Логотипы Ubuntu (спасибо Майклу Шереру)
NetBSD и pkgsrc (спасибо Майклу Шереру)

- Обработка некоторых типов гостя, которые используют / dev / root в / etc / fstab.

- Исправлена ​​обработка гостей с> 26 дисками (спасибо Мэтью Бут)

- Добавлена ​​поддержка для гостей с дисками HP Smart Array (спасибо Мэтью Бут)

фебутстрап

- Переменные среды FEBOOTSTRAP_KERNEL, FEBOOTSTRAP_MODULES могут
быть установленным, чтобы выбрать, какое ядро ​​использовать для устройства.

разное

- Поддержка ArchLinux теперь работает с Linux 3.0 (спасибо Эрику Нолти)

- диски libvirt отмечены теперь добавляются только для чтения, когда
используя опцию virt-tools '-d'.

Безопасность.
(в этом выпуске не было обнаружено или исправлено никаких проблем с безопасностью)

Новое API
сжатие, сжатие устройства, копирование устройства на устройство,
копирование устройства в файл, копирование файла на устройство, копирование файла в файл,
получить-smp, часть-к-партнеру, установить-smp.

API монтирования больше не добавляет неявно параметры -o sync, noatime.

add-domain имеет новый необязательный параметр readonlydisk для управления
как диски обрабатываются.

Внутренности
- На исходном коде был запущен Coverity, и были обнаружены другие ошибки и
исправлена.

- Для сборки libguestfs теперь требуется библиотека PCRE.

- APIC теперь используется по умолчанию для устройства. Вы также можете включить
Поддержка SMP в устройстве.

- Привязки OCaml теперь правильно получают блокировку GC во время обратных вызовов.

- Сборки вне дерева теперь должны работать правильно (спасибо Hilko Bengen).

- ./configure --with-extra = "..." может использоваться упаковщиками для установки
дополнительная строка версии.

- ноль, API с нулевым устройством: если блоки уже содержат нули,
не пишите нулей, чтобы мы без надобности не делали
базовое хранилище не является разреженным.

- is-zero, is-zero-device API: оптимизируйте их, чтобы нулевое обнаружение
быстрее.

ошибки фиксированной
- 748266 libguestfs должен обнаруживать версии qemu, для которых требуется опция -machine pc
- 747290 libguestfs игнорирует в libvirt XML
- 747287 Вводящее в заблуждение сообщение об ошибке при отказе в разрешении на открытие образа диска.
- 746295 virt-make-fs не устанавливает идентификатор раздела
- 744795 guestmount --live не используется
- 737944 virt-win-reg hyphen (ключ удаления) синтаксис может быть неправильным и не задокументирован
- 733297 обработчики событий ruby ​​завершаются с ошибкой "исключение в обратном вызове: неправильный тип аргумента Proc (ожидаемые данные)"
- 731744 libguestfs должна экранировать специальные / непечатаемые символы в отладочном выводе.
- 729887 сбой устройства при запуске aug_init с флагами = 4
- 729075 libguestfs путает раздел Hp_recovery с корневой файловой системой Windows.
- 727178 ошибка: luks_open: cryptsetup: ошибка при загрузке разделяемых библиотек: libfipscheck.so.1: невозможно открыть файл общих объектов: нет такого файла или каталога
- 726739 libguestfs: ошибка: aug_get: нет подходящего узла, пытается найти имя хоста
- 723474 Если hivex и / или pcre не установлены, libguestfs не компилируется.
- 693359 virt-cat и virt-edit неправильно обрабатывают пути NTFS с учетом регистра.
- 678231 virt-Inspector сообщает UUID неизвестной файловой системы
- 671082 libguestfs не работает с kernel-rt
- 666578 libguestfs: метка неизвестной файловой системы SWAP-sda2
- 642821 virt-resize падает на образ диска с логическим разделом подкачки

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.12


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.10.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
рыба-гость

- строки guestfish могут использовать escape-последовательности,
например. > write / foo "строка 1 \ nстрока 2 \ n"

- Команда guestfish write-append может использоваться для добавления в файлы.

- Выгрузку и скачивание длительно выполняемых файлов можно отменить с помощью
API или нажав ^ C в guestfish.

- Новая команда guestfish "display" для отображения графических файлов.
внутри гости.

- В guestfish завершение табуляции теперь работает на / dev / mapper устройств.

вирт-инспектор

- Inspection API может получить значок или логотип для определенных гостей.

- virt-Inspector включает логотип и имя хоста для определенных гостей.

- virt-Inspector теперь может получать номера версий и выпусков для RPM
пакеты.

- CentOS и Scientific Linux теперь рассматриваются как отдельные дистрибутивы.
API проверки.

виртуальное изменение размера

- virt-resize теперь может обрабатывать btrfs.

- Новая опция virt-resize --ntfsresize-force позволяет виртуальным машинам Windows быть
размер изменен несколько раз.

другими добродетель инструменты

- Guestfish, Guestmount, virt-cat, virt-df, virt-edit, вирт-файловые системы,
virt-Inspector, virt-ls и virt-rescue теперь позволяют использовать
Параметр "-d UUID" для указания гостя по UUID. Это делает их более
надежен для использования из других программ.

- Параметр virt-ls -lR позволяет выполнять комплексную итерацию файлов и гостевой анализ.

- virt-win-reg поддерживает HKEY_USERS \ и HKEY_USERS \ .

- virt-win-reg, новая опция --unsafe-printable-strings позволяет печатать
строки, которые будут отображаться в выводе (небезопасно: прочтите документацию
Перед использованием).

- virt-edit был переписан на C.

API и язык переплеты

- Теперь полностью поддерживается Java.
Посмотреть http://libguestfs.org/guestfs-java.3.html

- JRuby поддерживается через привязки Java.

- guestfs_close теперь отображается в сообщениях трассировки.

- Привязка Python добавляет явный метод g.close ().

- Программы Python теперь могут использовать новый API событий.

- Python GIL выпускается во время вызовов libguestfs, что позволяет
Программы Python для правильной работы.

- Теперь поддерживаются 9pfs (файловые системы Plan 9, экспортированные с хоста).

- Добавьте -DGUESTFS_WARN_DEPRECATED = 1, чтобы предупредить об использовании устаревшего API.
функции в программах на C.

- Новая страница руководства guestfs-рецепты(1) с рецептами.

- mkfs-opts теперь может устанавливать размер inode и размер сектора в созданных файловых системах
(спасибо Никите Меньковичу).

- guestfs_last_errno теперь доступен из OCaml (как g # last_errno ()).

Безопасность.
- optargs_bitmask проверяется даже для вызовов без дополнительных
аргументы. Это закрывает возможный эксплойт в демоне из
ненадежные абоненты.

Новое API
btrfs-filesystem-resize, get-pgroup, проверить-get-icon, is-zero,
is-zero-device, list-9p, list-dm-devices, mount-9p, ntfsresize-opts,
установить-pgroup, написать-добавить

Внутренности
- Coverity (инструмент статического анализа) был запущен по всей кодовой базе и
было сделано много исправлений.

- Генератор может обрабатывать функции, которые возвращают RBufferOut и имеют
необязательные аргументы.

- Совместимость с Perl 5.14.

- Совместимость с gcc 4.6.

- Выполните проверки безопасности на QEMU.

- Тесты C API теперь могут полностью тестировать вызовы с необязательными аргументами.

- Используйте ./configure --enable-install-daemon для установки / usr / sbin / guestfsd.

- каталог po-docs теперь охватывает все страницы руководства.

- stderr из процесса qemu теперь захватывается подсистемой событий.

ошибки фиксированной
- 602997 part-get-bootable дает неправильный результат с неупорядоченной компоновкой частей
- 661280 virt-rescue: паника при выключении: "/ sbin / перезагрузка: Данный файл или каталог отсутствует"
- 700369 qemu-system-x86_64 говорит: «KVM не поддерживается для этой цели»
- 705200 попыток подключения гостя приводит к отказу в доступе
- 714981 'list-filesystems' не знает о файловых системах virtio 9p и не обнаруживает существующие монтирования.
- 717786 привязки python libguestfs должны иметь явный вызов закрытия
- 721275 virt-resize в F16 должен поддерживать btrfs

Release ноты для libguestfs 1.10.0


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.8.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
- libguestfs и инструменты могут использоваться против живых виртуальных машин.
См. Параметры "guestfish --live" и "guestmount --live", а также (для
низкоуровневый интерфейс) новые API-интерфейсы set-attach-method и
получить-прикрепить-метод.

- Новые инструменты virt:
вирт-копирование, вирт-копирование, вирт-тар-вход, вирт-тар-выход.

- libguestfs может получить сопоставление букв дисков для гостей Windows.

- virt-Inspector отображает сопоставление букв дисков для гостей Windows.

- Буквы дисков теперь можно использовать в программах virt-edit и guestfish.
при работе в гостевых системах Windows.

- virt-resize теперь работает на 32-битных хостах.

- Теперь вы можете проверить установочные диски и живые компакт-диски многих различных
операционных систем.

- рыба-гость

- guestfish, guestmount, virt-rescue теперь все поддерживают --ro и --rw
параметры, и значение по умолчанию для этого может быть выбрано через конфигурацию
файл (/etc/libguestfs-tools.conf).

- Новый API событий позволяет регистрировать более одного обратного вызова для
каждое событие, позволяет вызывать API с других языков,
и позволяет перенаправлять почти все сообщения журнала, отладки и трассировки
от stderr.

- Повышенное соответствие требованиям FHS для временных файлов, в том числе с использованием / Вар / TMP
для больших кешированных файлов, которые должны пережить перезагрузку (вместо / Tmp).

- guestfish, опция guestmount -m позволяет передавать параметры монтирования
через базовую файловую систему.

- mkfs-opts позволяет указать функции файловой системы.

- Более интеллектуальная обработка точек монтирования, позволяющая mkmountpoint, mount
и команды umount-all для правильной совместной работы.

- Сообщения трассировки имеют префикс с отдельной строкой, что позволяет им
быть легко "вытянутым" из отладочной информации.

- guestfs_launch (команда guestfish 'run') теперь производит прогресс
сообщения (индикатор выполнения guestfish), если это занимает больше 5
секунд до запуска.

- Несколько долго выполняющихся команд, время которых мы не можем оценить
до завершения генерировать события прогресса в "импульсном режиме". Индикатор
в guestfish был обновлен, чтобы отображать их.

- Опубликовать новый пример кода на: C, Perl, Python, OCaml, Ruby.

- Новый пример программы virt-dhcp-address.

- Значительно улучшены привязки Java и Ruby.

- Perl включает способ получения errno последней ошибки.

- Привязки Python теперь совместимы с rpyc (спасибо Erez Shinan).

- Transifex теперь используется для управления переводами.
http://www.transifex.net/projects/p/libguestfs/

- Inspection теперь поддерживает дистрибутивы Red Hat Desktop и Slackware.

- Проверка больше не дает сбоев для гостей Windows, у которых есть два или
больше дисков.

- Осмотр теперь может определить разницу между Windows 2008 Server.
и Windows 7.

- Инспекция может обнаруживать 32-битные приложения, установленные в 64-битных
Windows, работающая на эмуляторе WOW64.

- Серия исправлений протокола устранила старую ошибку RHBZ # 576879.
который раньше вызывал ошибки во время команды загрузки, чтобы потерять
протокол синхронизации.

- Новый логотип!

Безопасность.
[никто]

Новое API
первый частный, метод получения-присоединения, проверка сопоставления-получения-диска,
проверить-получить-продукт-вариант,
inspect-get-windows-current-control-set, следующий-частный, resize2fs-M,
установить-прикрепить-метод.

Внутренности
- Файл «HACKING» устарел. Содержимое было перемещено в
раздел гость(3) страница руководства.

- libguestfs-test-tool упрощен. Он больше не нуждается в статике
двоичный файл или пытается создать ISO.

- файлы, сгенерированные rpcgen, компилируются с -fno-strict-aliasing
что должно быть безопаснее (спасибо Мэтту Буту).

- virt-resize был переписан в OCaml.

- guestfish и другие инструменты, протестированные с valgrind; некоторые утечки памяти
были исправлены.

ошибки фиксированной
- 502533 Обновлен польский перевод libguestfs.
- 576879 протокол libguestfs теряет синхронизацию, если вы "закачиваете" перед монтированием дисков.
- 599503 документ, в котором mkmountpoint и umount-all нельзя смешивать
- 617440 guestfish: не удается развернуть тильду '~', когда $ HOME env не задано
- 664558 RFE: разрешить установку обратного вызова журнала в привязках Ruby
- 665358 Перевод на панджаби завершен (pa_IN)
- 666577 libguestfs: неизвестная файловая система / dev / fd0
- 667610 Множественные ошибки, утечки памяти в рубиновых привязках libguestfs
- Команда 668112 virt-filesystems не работает на гостевой машине с поврежденной меткой файловой системы.
- 668574 guestfish -i пытается смонтировать все крепления из / И т.д. / Fstab и выдает ошибку, когда устройство не существует
- 673479 Добавить удобную для grep строку в вывод LIBGUESTFS_TRACE
- 674130 Ошибка проверки кода для гостевой Windows с двумя дисками
- 682756 libguestfs отслеживает segfaults, когда list-filesystems возвращает ошибку
- 682979 libguestfs неправильно определяет рабочий стол Red Hat как «redhat-based» вместо «redhat».
- 690819 mkfs не может создать файловую систему на дисковом устройстве при использовании диска с интерфейсом ide.
- 691389 Расширенные атрибуты не работают через гостевой режим (FUSE)
- 691724 virt-Inspector сообщает о неизвестной файловой системе / dev / vda1
- 692545 inspect-list-applications не может обнаружить 32-битные приложения, установленные под эмулятором WOW64 в 64-битной Windows.
- 693324 интерфейс python sfdisk принимает только списки типа 'list' для параметра строк

Release ноты для libguestfs 1.8


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.6.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
- Поддержка и пакеты для Debian и Ubuntu.

- Ежедневные сборки из репозитория git на Debian и Ubuntu для снижения риска
регрессий.

- Перенос на ArchLinux pacman (спасибо Thomas S Hatch).

- Следующие инструменты были переписаны на C (изначально на Perl):

. виртуальный кот
. вирт-дф
. вирт-инспектор
. вирт-лс
. спасение вирт

- Некоторые инструменты C поддерживают зашифрованные гостевые файлы автоматически. Это
поддерживается в: guestfish, guestmount, virt-cat, virt-Inspector,
вирт-лс.

- Новый инструмент virt-filesystems (на C), который заменяет
virt-list-filesystems и virt-list-partitions, и имеет надмножество
функциональности этих инструментов.

- guestfish, guestmount и инструменты C используют единую опцию командной строки
синтаксический анализ, поэтому они поддерживают много общих параметров, таких как '-a disk.img',
'-d libvirt-domain', '-x', '-v'. Старый параметр командной строки
парсинг сохранен для совместимости в скриптах и ​​т. д.

- guestfish больше не зависит от Perl

- Новые страницы руководства, содержащие примеры программирования: guestfs-примеры(3) (C / C ++),
Guestfs-ocaml(3) гость-питон(3) guestfs-руби(3).

- В режиме трассировки печатаются возвращаемые значения из функций API.

- virt-Inspector может отображать приложения, установленные в гостях Windows, а также
с большим количеством информации об этих приложениях.

- Добавлена ​​поддержка для проверки: Linux Mint, Mandriva, FreeBSD.

- опция guestfish --rw (в настоящее время не действует), чтобы потенциально
опасный доступ для записи явный.

- guestfish --listen --csh для совместимости с csh, tcsh (спасибо
Эрик Блейк).

- Первая апстрим-версия, в которой представлены все функции API, теперь
задокументировано в гость(3).

- guestfs_last_errno позволяет получить номер ошибки из
демон, правильно переведенный в локальную операционную систему.

- Функции теперь могут иметь необязательные параметры.

- Индикаторы выполнения и уведомления о прогрессе теперь могут появляться при загрузке
команды.

- Конструктор устройств более осторожен, чтобы не оставлять временные файлы
около в / tmp.

- в virt-rescue добавлены команды getfattr / setfattr.

- Файл ROADMAP содержит дорожную карту и цели для будущих выпусков.

Безопасность.
- Новый раздел БЕЗОПАСНОСТЬ в гость(3) Документация по API.

- virt-Inspector больше не запускает гостевые команды.

- Код проверки более осторожен, избегая очень больших файлов.
от гостей, которые ранее могли вызвать отказ в обслуживании.

- Вызовы FUSE в guestmount теперь отслеживаются при использовании guestmount -x.

Новое API
- добавить домен
- добавить-диск-опций
- getxattr
- осмотреть-получить-имя-хоста
- проверить-получить-формат-пакета
- инспектировать-получить-управление-пакетами
- проверить-получить-укорениться
- проверить-список-приложений
- lgetxattr
- мкфс-оптс

Внутренности
- Программы на C теперь связываются только с теми библиотеками, которые они используют.

- Библиотеки PCRE, libmagic, hivex и libvirt теперь полностью
необязательно для строительства.

- Исправлены множественные утечки памяти и утечки файловых дескрипторов.

- Добавить оболочку POD для унификации генерации страниц руководства и файлов HTML.
во всех программах.

- Источник включает фальшивые образы Fedora, Debian, Ubuntu и
Гости Windows.

- В привязках Ruby есть правило make install.

- теперь один файл.

- не требует заголовков XDR.

- Библиотека ocaml xml-light больше не требуется для сборки (спасибо
Максим Кольцов).

- ./configure --disable - [...] для привязки каждого языка (спасибо
Максим Кольцов).

- Удалена старая программа ocaml-viewer (используйте вместо нее guestfs-browser).

- Новый тип теста C API 'InitScratchFS' заставляет тесты немного работать
быстрее.

- Исключенные пакеты в устройстве теперь перечислены в отдельном
файл appliance / excludelist.in и может быть настроен для каждого дистрибутива.

ошибки фиксированной
- 663407 readlink и readlinklist возвращают / sysroot / в некоторых путях
- 661280 virt-rescue: паника при выключении: "/ sbin / перезагрузка: Данный файл или каталог отсутствует"
- 657499 контрольная сумма: неправильный тип контрольной суммы приводит к сбою umount
- 655554 Виртуальный инспектор не делает все пути к диску каноническими.
- 654638 openssl обновлен до 1.0.0b libguestfs зависит от точных имен файлов
- 652796 рубиновых привязок, не установленных командой make install, поэтому не включены в двоичный дистрибутив.

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.6


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.4.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
- Используйте новый метод для создания и кэширования устройства. Этот
значительно улучшает производительность libguestfs, часто в несколько раз
от x 4 до x 5.

- Поддержка гостевой инспекции (например, вирт-инспектора) через обычный
API и все языковые привязки. опция 'guestfish -i' является дополнительной
эффект намного быстрее.

- virt-Inspector и API проверки ядра теперь могут обнаруживать запущенных гостей:
Fedora, Debian, Ubuntu, Windows, Red Hat Enterprise Linux, CentOS,
Научный Linux, Gentoo, Pardus, Arch Linux, MeeGo.

- Поддержка шифрования всего диска LUKS в гостевых системах.

- Привязки PHP.

- Сообщения о ходе выполнения (и индикаторы выполнения в guestfish и virt-resize)
для некоторых длительных операций.

- virt-df теперь намного эффективнее. Используйте '--one-per-guest' для восстановления
старое поведение изоляции для каждого гостя.

- команды guestfish 'copy-in' и 'copy-out' для копирования файлов и
каталоги рекурсивно в гостевой системе и из нее.

- команда guestfish 'hexedit' для выполнения двоичного редактирования устройств и
файлы.

- Измените синтаксис guestfish -i, чтобы можно было указывать команды в
командная строка (с сохранением обратной совместимости).

- guestfish '-d 'для добавления дисков из доменов libvirt.

- опция guestfish '-N' поддерживает несколько новых типов подготовленных образов дисков:
lvfs: диск с LV, отформатированный с файловой системой
lv: диск с LV
bootroot: загрузка + корень
bootrootlv: загрузка и root на LV

- команды guestfish 'more' и 'edit' теперь работают с произвольными файлами.

- опция guestfish '--echo-keys' позволяет отображать ключи / парольные фразы
при их вводе.

- guestmount теперь поддерживает параметры -a / -d / -i, как и guestfish.

- Используйте virtio-serial для связи с устройством. Этот
также имеет большое преимущество в производительности.

- Параметр virt-edit '-b' для создания резервной копии отредактированных файлов.

- Параметр virt-edit '-e' для неинтерактивного редактирования файлов.

- Возможность захвата дампов ядра с устройства (спасибо Мэтью Буту).

- virt-rescue теперь корректно завершает работу (спасибо Мэтью Буту).

- virt-rescue теперь имеет параметр --network для включения доступа к сети.

- virt-resize теперь может обрабатывать гостей, которые используют формат таблицы разделов GPT.

- virt-resize лучше поддерживает уменьшение размеров гостей.

- virt-resize поддерживает гостей формата qcow2.

- $ TMPDIR можно использовать для отмены почти любого использования временных каталогов.

- Пользователи OCaml могут использовать альтернативный объектно-ориентированный стиль кодирования, например. g # запуск ()

- API поддерживает вызовы, которые принимают необязательные параметры, например.
$ g-> add_drive_opts ("диск", только для чтения => 1);

- Вывод трассировки теперь ускользает и укорачивает большие строки (спасибо
Мэтью Бут).

- Автосинхронизация теперь включена по умолчанию, что обеспечивает более надежное поведение
когда ручка закрыта.

- virt-df - опция --uuid позволяет отслеживать домен в процессе миграции
и переименование.

- Переводы справочных страниц.

Безопасность.
- CVE-2010-3851 libguestfs: отсутствует спецификатор формата диска при добавлении диска.
https://www.redhat.com/archives/libguestfs/2010-October/msg00036.html
Это полностью исправлено в этом выпуске, и исправление будет
После дополнительного тестирования был перенесен обратно в другие стабильные ветки.

- virt-Inspector больше не полагается на ненадежный гостевой код для вывода списка
приложения в некоторых гостях.

Новое API
смещение загрузки, файловая архитектура, findfs-label, findfs-uuid,
инспектировать-ос, инспектировать-получить-арку, инспектировать-получить-дистрибутив,
инспектировать-получить-файловые системы, инспектировать-получить-основную-версию,
проверить-получить-младшую-версию, проверить-получить-точки монтирования,
проверить-получить-название-продукта, проверить-получить-тип, is-blockdev, is-chardev,
is-fifo, is-lv, is-socket, is-symlink, список файловых систем, luks-add-key,
luks-close, luks-format, luks-format-cipher, luks-kill-слот,
luks-open, luks-open-ro, lvm-clear-filter, lvm-canonical-lv-имя,
lvm-set-filter, part-to-dev, предварительное устройство, pwrite-устройство,
выгрузка-смещение

Внутренности
- Используйте size_t для итераторов цикла.
- Реорганизуйте код библиотеки в отдельные файлы.
- Реорганизуйте код генератора в отдельные файлы.
- Создавайте команды guestfish.
- унифицирована обработка опций guestfish и guestmount.
- Изменения протокола:
размер сообщения об ошибке увеличен до 64 КБ
отправить errno в библиотеку
- Добавьте «make bindist», чтобы получить двоичный дистрибутив.
- Более чистое поведение под valgrind.
- Дополнительное тестирование параметров командной строки guestfish и libvirt.
интеграция.
- Код проверки Perl больше не используется ни одним из инструментов.

ошибки фиксированной
- 646822 режим трассировки libguestfs не должен печатать длинные двоичные строки
- 646821 virt-df должен иметь параметр --uuid
- 646432 / dev / mapper пути не должны возвращаться из guestfs_mountpoints
- Документация по инструментам 643624 libguestfs должна описывать, как цитировать имена гостевых доменов из оболочки.
- 642934 Невозможно указать формат диска при добавлении диска в libguestfs
- 642933 guestfs_list_filesystems следует использовать во всех возможных местах
- 642932 параметров guestmount должны соответствовать параметрам guestfish.
- 642930 virt-Inspector (Sys :: Guestfs :: Lib) должен использовать API проверки C
- код проверки 642929 C следует игнорировать / dev / fd* в / И т.д. / Fstab
- 642826 virt-resize преобразует любой другой формат изображения в необработанный без уведомления пользователя, инструкции не учитывают это
- 640961 Документ о том, что установка grub может потребоваться для старых гостей Linux после изменения размера virt-resize.
- 639986 virt-df --csv неправильно цитирует "в именах доменов libvirt
- 639405 Прерванное создание кэшированного устройства приводит к невозможности использования libguestfs.
- 638901 Имя файла устройства не должно содержать имя репозитория.
- 638899 / dev / mapper пути не должны возвращаться из API проверки C
- 636918 Обновления для испанского перевода.
- 636061 [abrt] guestfish-1.2.11-1.fc12: malloc_consolidate: процесс / usr / bin / guestfish был остановлен сигналом 11 (SIGSEGV)
- 635969 glob echo mkfs ext2 / dev / vd [bt] 1 печатает мусор
- 634246 guestfs_part_get_parttype возвращает "цикл" при запуске с разделом, LV или файловой системой
- 633766 virt-resize --shrink не работает
- 633357 Обновления для испанского перевода.
- 633096 virt-resize неправильно вычисляет размер блочного устройства, не работает с целью qcow2
- 629593 добавлен голландский перевод
- 627556 ​​Обновления для испанского перевода libguestfs.
- 626843 Обновления для испанских переводов.
- 619793 [RFE] Требуется способ определить, является ли конкретное блочное устройство логическим томом.
- 618556 virt-rescue не возвращает нулевое значение при выходе
- Операция монтирования 617200 не удалась и зависла на некоторых образах, которые работали в режиме только для чтения.
- 610880 libguestfs должен устанавливать более широкие права чтения на tmpdir, поэтому работает в некоторых ситуациях при выполнении с umask 077
- 599503 документ, в котором mkmountpoint и umount-all нельзя смешивать
- 571714 Запуск virt-df в образе диска меняет его метку, поэтому qemu больше не может писать в него.
- 502533 Обновлен польский перевод libguestfs.

РЕЛИЗ ПРИМЕЧАНИЯ Для LIBGUESTFS 1.4


Эти примечания к выпуску охватывают только отличия от предыдущего разделения веток stable / dev.
(1.2.0). Подробные журналы изменений см. В репозитории git или в файле журнала изменений.
распространяется в архиве.

Новое функции
- guestfish позволяет выбрать подготовленный образ диска, например:
guestfish -N fs: ext4

- Добавлена ​​поддержка записи в модуль guestmount (FUSE).

- virt-resize теперь может изменять размер содержимого разделов и логических
объемы в гостях, и у нас есть лучшая поддержка для уменьшающихся гостей.

- Скрипт завершения табуляции Bash для guestfish.

- Добавить поддержку ZFS в virt-rescue.

- Новый инструмент virt-make-fs для создания файловых систем с контентом.

- Разрешить суффиксы для любого параметра номера guestfish, например. «1М».

- команда guestfish 'man' открывает страницу руководства.

- guestfish поддерживает синтаксис heredoc для загрузки файлов:
загрузить - << _ end_ / foo
содержание
_конец_

- Некоторые команды guestfish теперь выводят свой вывод в восьмеричном или шестнадцатеричном формате.
где необходимо (RHBZ # 583242).

- Разрешить префикс тире в командной строке guestfish. Это игнорирует любые
ошибка второй команды: (RHBZ # 578407)
guestfish - cmd1: -cmd2: cmd3

- Команда guestfish -h / help теперь возвращает ошибку несуществующей
команды (RHBZ # 597145).

- Новая поддерживаемая команда в guestfish для вывода списка необязательных групп
команды, которые поддерживаются демоном / configuration.

- virt-Inspector и guestfish -i теперь работают с именами файлов, которые
содержать пробелы (RHBZ # 507810).

- Измените протокол, чтобы использовать локальные адреса ссылки, чтобы избежать
конфликтует с любым адресом, который может использовать хост
(РХБЗ № 588763).

- libguestfs теперь устанавливает правильное время и часовой пояс в файловой системе
изменения.

- Отсортируйте домены в алфавитном порядке в virt-df.

- Сделайте команду mkfs-b работающей для FAT и NTFS, сопоставив размер блока
параметр размера кластера (RHBZ # 599464).

- Добавить номера версий в модули Perl (RHBZ # 521674).

- Локализация теперь работает для всех инструментов libguestfs (RHBZ # 559963).

- Инструменты теперь поддерживают виртуальные машины с файловой системой в образе (RHBZ # 590167).

- virt-list-partitions имеет параметр -t для отображения общего размера дисков.

- Включите дополнительные линзы Augeas в устройство supermin (Мэтью Бут).

- Добавить ошибку и закрыть обратные вызовы.

- Добавить явный метод закрытия в Perl API.

- Множественные исправления для совместимости с RHEL 5.

- Множественные исправления для совместимости Debian / Ubuntu.

- Множественные исправления для улучшения документации.

Безопасность.
- Исправить потенциальный DoS в virt-Inspector и virt-v2v, если специально
созданный образ диска содержал символьное устройство вместо одного из
файлы конфигурации, которые мы читаем в / и т.д. (РХБЗ № 582484).

Новое API
- aug-clear - очистить путь Авгия
- available-all-groups - вернуть список всех необязательных групп
- base64-in - загрузить данные в кодировке base64 в файл
- base64-out - скачать файл и закодировать как base64
- контрольная сумма-устройство - вычисление контрольных сумм для содержимого устройства
- контрольные суммы - вычислить контрольные суммы нескольких файлов в каталоге
- debug-upload - загрузить файл на устройство
- fallocate64 - предварительно разместить файл в гостевой файловой системе
- fill-pattern - заполнить файл повторяющимся шаблоном байтов
- get-umask - получить текущую umask
- lvresize-free - развернуть LV, чтобы заполнить свободное пространство
- ntfsresize - изменить размер файловой системы NTFS
- ntfsresize-size - изменить размер файловой системы NTFS (с размером)
- part-del - удалить раздел
- part-get-bootable - получить загрузочный флаг раздела
- part-get-mbr-id - получить байт типа MBR раздела
- part-set-mbr-id - установить байт типа MBR раздела
- pvresize-size - изменить размер физического тома (с размером)
- pwrite - записать в часть файла
- resize2fs-size - изменить размер файловой системы ext2 / 3/4 (с размером)
- txz-in - распаковать сжатый tarball в каталог (RHBZ # 580556)
- txz-out - упаковать каталог в сжатый tarball (RHBZ # 580556)
- vfs-label - получить метку файловой системы
- vfs-uuid - получить UUID файловой системы
- vgscan - повторное сканирование физических томов LVM, групп томов и логических томов
- написать - создать новый файл
- zero-device - записать нули на все устройство

Внутренности
- Расширьте генератор для поддержки тестирования дополнительных функций.
- Более строгая проверка входных параметров для многих вызовов (RHBZ # 501893 RHBZ # 501894)
- Расширьте протокол для поддержки отправки произвольных 8-битных буферов данных.
- Отправьте файл "ОШИБКИ" с релизами. Это сводка ошибок в
база данных Red Hat Bugzilla.
- Отправьте файл «RELEASE-NOTES» с релизами, содержащий примечания к релизу.
- Объедините сборку супермини-бытовой техники в одном месте в febootstrap 2.7.
- Исправьте код протокола, чтобы обработать случай, когда оба конца отменили отправку
сообщения одновременно.

ошибки фиксированной
- 612178 guestfish: использование опции -m вместе с опцией --listen приводит к смерти устройства
- 610880 libguestfs должен устанавливать более широкие права чтения на tmpdir, поэтому работает в некоторых ситуациях при выполнении с umask 077
- 604691 привязки OCaml не являются потокобезопасными
- 603870 Обновления для испанского перевода.
- 602592 [RFE] выставить guestfs_close в привязках perl
- 600977 virt-df -h --csv "Аргумент .. не является числовым в printf"
- 599464 mkfs-b не поддерживает vfat / ntfs
- 598807 add_cdrom не работает в RHEL 6
- 598309 part-list и несколько других команд завершились ошибкой libguestfs на RHEL5
- Команда 'help' 597145 guestfish должна указывать на ошибку в статусе выхода с неизвестной командой
- 597135 cmd записи файла guestfish не проверяет параметр "размер"
- 597118 С помощью mke2journal-L должно быть выдано предупреждение о длине этикетки.
- 597112 get-e2uuid должен использовать blkid вместо "tune2fs -l" для получения UUID файловой системы.
- 596776 virt-Inspector не обнаруживает псевдонимы modprobe на гостях RHEL 3.
- 596763 Обновления для испанского перевода.
- 593292 Обновления для испанского перевода.
- 592883 не может редактировать файлы на образах, смонтированных с помощью guestmount cmd.
- 592360 Обновления для испанского перевода.
- 591250 virt-tar печатает "tar_in: подкоманда tar не удалась в каталоге", если архив сжат или имеет неправильный формат.
- 591155 virt-tar печатает «tar_in: подкоманда tar не удалась в каталоге», если образ диска недоступен для записи
- 591142 virt-Inspector должен выдавать ошибку для нераспознанных образов дисков
- 590167 virt-Inspector и другие инструменты virt должны иметь возможность обрабатывать виртуальные машины файловой системы на образе.
- 589039 cmd для чтения файла guestfish вызовет зависание демона при чтении больших файлов.
- 588851 guestfs_launch () возвращает -1, но guestfs_last_error () == NULL
- 588763 libguestfs должна использовать закрытые или локальные адреса для сети устройства.
- 588733 Обновления для испанского перевода.
- 588651 cmd 'strings-e' guestfish не выдает правильного сообщения об ошибке или подсказки.
- 587484 lvresize не может уменьшить размер тома
- 585961 Обновления для испанского перевода.
- 585223 ntfsresize должен поддерживать сжатие файловых систем.
- 585222 pvresize должен поддерживать сжатие PV
- 585221 resize2fs должен поддерживать сжатие файловых систем.
- 584038 Обновления для испанского перевода.
- 583554 [FEAT] Команда mknod-mode необходима для явной установки режима
- 583242 [RFE] guestfish должен печатать выходные данные в подходящей основе (например, в восьмеричном для режимов)
- 582993 guestfish ест слова, когда табуляция закрывает пути, чувствительные к регистру (in)
- 582953 Вводящая в заблуждение справочная информация о команде lvcreate
- 582948 команда mknod не создает блочные, символьные или FIFO-устройства.
- 582929 mknod не проверяет недопустимый режим
- 582901 команды guestfish chmod / umask не проверяют недопустимое значение режима
- 582899 guestfish: sparse отсутствует в списке автозаполнения команд
- 582891 Поведение [Feature Request] и возвращаемое значение команды guestfish umask должны быть изменены.
- 582548 [mknod] umask не должен действовать, если режим установлен явно
- 582484 некоторые подкоманды guestfish не могут правильно обрабатывать специальные файлы.
- 582252 Обновления для испанского перевода.
- 581501 Обновления для испанского перевода.
- 580650 virt-Inspector предупреждает: "По умолчанию grub не указан в /usr/lib/perl5/Sys/Guestfs/Lib.pm в [...]"
- 580556 запрос libguestfs для поддержки tarballs .txz
- 580246 tar-in команда зависает, если загружается больше, чем доступно
- 580016 aug-ls в guestfish не принимает переменную augeas в качестве аргумента
- 579664 guestfish не сообщает об ошибке, когда недостаточно места для размещения изображений.
- 579608 несколько команд в guestfish не могут работать для символьных ссылок
- 579155 libguestfs зависает, если qemu не запускается (в нулевом режиме vmchannel)
- 578407 префикс '-' в подкоманде не обрабатывается guestfish в режиме удаленного управления
- 576879 протокол libguestfs теряет синхронизацию, если вы "закачиваете" перед монтированием дисков.
- 559963 программы libguestfs Perl устанавливают языковой стандарт, но локализация все равно не работает
- 521674 Модули Perl не версионированы, но должны иметь номера версий.
- 516096 Состояние гонки в test_swapon_label_0: / sbin / blockdev: BLKRRPART: Устройство или ресурс занят
- 507810 guestfish -i / virt-Inspector не может обрабатывать пробелы в именах файлов.
- 502533 Обновлен польский перевод libguestfs.
- 501894 Некоторые параметры String должны быть OptString
- 501893 строковые параметры должны быть проверены на! = NULL
- 501889 файл записи не поддерживает строки, содержащие ASCII NUL
- 484986 grub-install не работает на диске virtio

РЕЛИЗ ПРИМЕЧАНИЯ Для ИСТОРИЧЕСКИЙ ВЕРСИИ OF LIBGUESTFS


До 2010 у libguestfs не было официальных примечаний к выпуску или формализованной версии.
система нумерации. Однако это ссылки на исторически значимые версии.

2009-11-10 (1.0.78)
https://www.redhat.com/archives/libguestfs/2009-November/msg00095.html

2009-09-13 (1.0.67)
https://www.redhat.com/archives/libguestfs/2009-August/msg00281.html

2009-07-23 (1.0.64)
https://www.redhat.com/archives/libguestfs/2009-July/msg00059.html

2009-07-14 (1.0.59)
https://www.redhat.com/archives/libguestfs/2009-July/msg00023.html

2009-04-01 (первоначальное объявление)
http://rwmj.wordpress.com/2009/04/01/libguestfs-access-and-modify-virtual-machine-disk-images/

Используйте примечания к выпуску guestfs в Интернете с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

Команды Linux

Ad




×
Реклама
❤️Совершайте покупки, бронируйте или заказывайте здесь — никаких затрат, что помогает поддерживать бесплатность услуг.