Amazon Best VPN GoSearch

icono de página de OnWorks

guestfs-release-notes: en línea en la nube

Ejecute guestfs-release-notes en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando guestfs-release-notes que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


guestfs-release-notes - Notas de la versión de libguestfs

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.32


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.30.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
Nuevo

El nuevo virt-v2v-copiar a local(1) la herramienta es una herramienta auxiliar para virt-v2v(1) permitiéndote
para convertir invitados de origen a los que virt-v2v no puede acceder directamente.

Nuevo Características in existente

Virt-personalizar sabe cómo escribir una semilla aleatoria para CirrOS (Pino Toscano).

En Fedora, virt-personalizar se ejecuta DNF(8) con el --mejor bandera, asegurándose de que siempre se actualice a
los últimos paquetes disponibles.

Virt-builder ahora proporciona plantillas Fedora de 32 bits.

Virt-builder y virt-personalizar --Instalar en pc La opción ahora funciona en invitados Fedora de 32 bits.
Previamente intentaría instalar paquetes de 64 bits (Jan Sedlák).

Virt-builder ahora puede obtener imágenes de la nube utilizando metadatos de Simple Streams v1.0 (Pino Toscano).

Virt-builder ahora puede obtener imágenes en la nube de openSUSE listas para usar (Cédric Bosdonnat).

Virt-personalizar ahora utilizará contraseñas cifradas más seguras (SHA-512) de forma predeterminada en openSUSE
≥ 11 (Pino Toscano).

Virt-builder ahora manejará correctamente los nombres de archivo de salida que contengan dos puntos (":"),
y creará archivos temporales en el directorio de caché libguestfs en lugar de predeterminar
/ Tmp (Pino Toscano).

Virt-resize tiene una nueva --sistemas de archivos desconocidos opción para controlar qué hacer cuando se le solicite
cambiar el tamaño de un sistema de archivos que libguestfs no sabe cómo cambiar de tamaño.

Virt-v2v ahora tiene un --en su lugar bandera / modo, permitiendo la conversión de invitados en el lugar (Roman
Kagán).

Virt-v2v tiene una --comprimido opción para crear archivos de salida qcow2 comprimidos.

Virt-v2v ahora puede obtener correctamente la ruta del centro de datos de VMware (dcPath) de libvirt, en su lugar
de tener que calcularlo usando un algoritmo que ocasionalmente obtuvo la respuesta incorrecta
(Matthias Bolte, Tingting Zheng).

Virt-v2v ahora procesa los tamaños de RAM correctamente para invitados de 64 bits cuando se ejecuta en un dispositivo de 32 bits
anfitrión.

Idioma Enlaces

En los programas Perl y Python, la API "get_program_name" ahora devuelve el verdadero nombre del programa,
en lugar de la cadena incorrecta "perl" o "python".

Los enlaces de Python ahora se pueden compilar con una versión diferente de libguestfs,
permitiendo que el módulo pip se construya contra cualquier versión de libguestfs (en lugar de
requiriendo que el módulo pip y libguestfs tengan exactamente la misma versión).

Se ha mejorado la calidad de Ruby rdoc (documentación) (Pino Toscano).

Los scripts de Perl ya no codifican la ubicación de perl en la línea shebang, sino que usan env(1)
para localizarlo en su lugar (Pino Toscano).

En los programas OCaml, el identificador guestfs se convirtió incorrectamente en una raíz global, lo que significa que
nunca se podría recolectar basura. Si no llamó a la función "cerrar" explícitamente, el
El identificador no se cerrará hasta que se cierre todo el programa. Esto ahora se ha solucionado
Las asas se recogerán de la forma habitual. Esto cambia la API de OCaml
función "Guestfs.event_callback". Tenga en cuenta que los enlaces de idiomas distintos de C no están cubiertos por
la garantía API / ABI de libguestfs, aunque nos esforzamos por no cambiarlos, pero en este
caso era esencial para corregir este error tan grave.

Inspección

Alpine Linux y el administrador de paquetes APK, ALT Linux, Frugalware y PLD Linux ahora
reconocido (Pino Toscano).

Si existiera, / etc / os-release será el preferido para inspeccionar invitados de Linux (Pino
Toscana).

Se devuelve la versión correcta del kernel para los huéspedes de Windows ≥ 10.

Documentación

El grande invitados(3) la página de manual se ha dividido en varias páginas de manual independientes:
piratería de guestfs(1) guestfs-internos(1) guestfs-seguridad(1). En el árbol de origen, un nuevo
documentos directorio contiene esta documentación.

Arquitecturas y plataformas

Libguestfs ahora admite plataformas ARM de 64 bits con vGICv3.

Seguridad
Vea también guestfs-seguridad(1).

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

Esta no es una vulnerabilidad en libguestfs, sino porque siempre damos un virtio-serial
puerto a cada invitado (ya que así es como ocurre la comunicación huésped-host), una escalada
desde el dispositivo hasta el host, el proceso qemu es posible. Esto podría afectarle si:

· Su programa libguestfs ejecuta programas que no son de confianza desde el huésped (usando
"guestfs_sh", etc.), o

· Se encontró otro exploit en (por ejemplo) el código del sistema de archivos del kernel que permitía
sistema de archivos con formato incorrecto para hacerse cargo del dispositivo.

Si usa sVirt para confinar qemu, eso frustraría algunos ataques.

Virt-personalizar los permisos en .ssh, .ssh / claves_autorizadas
https://bugzilla.redhat.com/1260778.

Anteriormente, cuando se le pedía que inyectara una clave SSH en un invitado, virt-personalizar (de ahí virt-
constructor también) crearía el .ssh directorio y .ssh / claves_autorizadas archivar con también
amplios permisos, permitiendo que otros usuarios lean. Ahora se crean como 0700 y
0600 respectivamente, que es el mismo que el ssh-copy-id(1) utilidad.

API
Nuevo API

"guestfs_get_identifier"
"guestfs_set_identifier"
Obtiene / establece un identificador por identificador. El efecto principal de esto es cambiar la salida de seguimiento
desde:

libguestfs: seguimiento: foo

para:

libguestfs: seguimiento: ID: foo

facilitando el seguimiento de trazas en programas de subprocesos múltiples, o donde un programa utiliza
múltiples identificadores (especialmente virt-v2v).

"guestfs_vfs_minimum_size"
Devuelve el tamaño mínimo de un sistema de archivos (cuando se reduce). Esto es compatible con ext2 / 3/4, XFS
y btrfs, y puede admitir otros tipos de sistemas de archivos en el futuro (Maxim Perevedentsev).

Otros API cambios

"guestfs_disk_create": agregue "preasignación" = "desactivado" / "metadatos" / "completo".
Para raw, esto permite "off" como sinónimo de "sparse" (lo que lo hace consistente con
qcow2). Para qcow2, esto permite "escaso" como sinónimo de "apagado".

También agrega "completo", que corresponde a totalmente asignado, pero utiliza posix_fallocate(3)
para la eficiencia.

"guestfs_tar_in": nuevos parámetros "xattrs", "selinux", "acl".
"guestfs_tar_out": nuevos parámetros "xattrs", "selinux", "acl".
Estos parámetros adicionales controlan si los atributos extendidos, los contextos SELinux y / o
Las ACL de POSIX se restauran o guardan en archivos tar.

"guestfs_add_drive"
Los parámetros existentes "nombre de usuario" y "secreto" se pueden utilizar para proporcionar autenticación.
para iSCSI (Pino Toscano).

Build cambios
Se ha eliminado la opción "./configure --enable-valgrind-daemon".

Ya no puede compilar libguestfs en máquinas RHEL 5-era (c.2007). Ver el "oldlinux"
rama si necesita (limitado) soporte RHEL 5.

Virt-p2v ahora se puede construir en distribuciones de Linux RHEL 6-era (c.2010).

OCaml ≥ 3.11 (lanzado en 2008) ahora se requiere para compilar desde git.

La construcción de los enlaces de Perl ahora requiere "Module :: Build" (en lugar de
"ExtUtils :: MakeMaker").

Las compilaciones deberían ser más rápidas (especialmente cuando se reconstruyen de forma incremental), porque se hizo el trabajo
para reducir los tiempos de construcción.

Tanto OCaml como el módulo OCaml findlib son necesarios si necesita ejecutar el generador en
Tiempo de construcción. Anteriormente, la compilación habría fallado si no se hubiera instalado findlib.

Las pruebas "make check" ahora se ejecutan en paralelo (dentro de cada directorio de prueba).

"make install" ya no instala OCaml bindtests. * archivos incorrectamente.

"make install" ahora se puede ejecutar dos veces. Anteriormente, fallaría en la segunda ejecución.

"make clean" ahora debería eliminar casi todos los archivos que crea "make".

Se ha agregado una nueva regla "make installcheck", que permite la copia instalada de libguestfs
para ser probado.

Internos
Se hizo un esfuerzo para minimizar el tamaño del electrodoméstico, lo que reduce
el espacio en disco y el tiempo que necesitan los identificadores de libguestfs.

El dispositivo ahora pasa el nombre de NIC a dhcpd, solucionando bloqueos al ejecutar el dispositivo en
algunas distribuciones (Cédric Bosdonnat).

Ahora se genera OCaml "Guestfs.Errno" (Pino Toscano).

En las herramientas OCaml, el código común ahora maneja --depuración-gc, --verboso y otras opciones comunes
(Román Kagan, Pino Toscano).

El arnés de prueba virt-v2v nos permite iniciar a los invitados de prueba en fechas fijas en el pasado,
asegurándose de que la reactivación de Windows no se active.

Hay una nueva API interna para leer / escribir un subproceso a través de una tubería desde el código de la biblioteca.

Se usó el programa "deheader" para eliminar las directivas "#include" no utilizadas.

En las herramientas OCaml, los módulos "Char" y "String" ahora hacen referencia implícita al
Módulos "Common_utils.Char" y "Common_utils.String" (en lugar de los de stdlib).
Los módulos "Common_utils" contienen una serie de funciones adicionales de utilidad de caracteres / cadenas, y
también esconde algunas funciones inseguras en stdlib.

Ahora se ejecutarán muchas más pruebas virt-v2v incluso si no tiene rhsrvany y virtio-win
instalado (Roman Kagan).

El enorme configurar.ac El archivo se ha dividido en varios archivos más pequeños llamados
m4 / guestfs _ *. m4.

El viejo pruebas / datos y pruebas / invitados los directorios se han movido a datos de prueba/. Esta nueva
El directorio de nivel superior contiene todos los datos de prueba que son comunes, grandes y / o compartidos entre
múltiples pruebas.

Hay un nuevo nivel superior sitio web/ directorio que contiene el público http://libguestfs.org
sitio web (o la mayor parte).

La prueba de fuzz de inspección (pruebas / fuzz) ha sido removido.

Virt-p2v ahora guarda la salida dmesg de la máquina física de origen en el servidor de conversión
directorio de depuración, lo que simplifica la depuración de casos en los que faltan controladores, firmware, etc.

Errores fijas
https://bugzilla.redhat.com/1294956
set-label devuelve un mensaje de error incorrecto cuando se configura la etiqueta del sistema de archivos ext3 / ext4

https://bugzilla.redhat.com/1288733
Agregar una imagen base de Fedora 23 de 32 bits para virt-builder

https://bugzilla.redhat.com/1288201
virt-builder escribe archivos temporales en / Tmp

https://bugzilla.redhat.com/1285847
virt-resize no copia particiones lógicas

https://bugzilla.redhat.com/1281578
virt-inspector devuelve la versión 6.3 para las imágenes de win10 (debería devolver 10.0)

https://bugzilla.redhat.com/1281577
virt-inspector --xpath segfault en el atributo get

https://bugzilla.redhat.com/1280029
libguestfs puede ejecutar comandos con stdin no abierto (o peor aún, conectado a
dispositivos aleatorios arbitrarios elegidos por invitados)

https://bugzilla.redhat.com/1279273
Acerca de la opción de compresión para qcow2

https://bugzilla.redhat.com/1278878
Guestfish debería poder manejar diseños delgados LVM

https://bugzilla.redhat.com/1278382
Error de programación de DNF python cuando se ejecuta desde virt-builder

https://bugzilla.redhat.com/1278371
la inspección devuelve arch = "desconocido" para el invitado de Windows si el comando de archivo no está instalado

https://bugzilla.redhat.com/1277274
Permisos de documentos necesarios para que los usuarios no administradores utilicen virt-v2v

https://bugzilla.redhat.com/1277122
RFE: virt-sparsify: hacer que la dispersión '--en el lugar' sea segura para abortar (con gracia o
sin gracia)

https://bugzilla.redhat.com/1277074
El cliente virt-p2v no debería presentar la opción vdsm porque no se puede usar

https://bugzilla.redhat.com/1276540
virt-v2v no puede convertir la imagen sin procesar de Windows: error "el nombre del dispositivo no es una partición"

https://bugzilla.redhat.com/1275806
virt-builder: error: [archivo] no es un archivo normal en el invitado

https://bugzilla.redhat.com/1270011
La prueba de Simplestreams falla: virt-builder: error: el valor de la clave 'tamaño' no es un
entero

https://bugzilla.redhat.com/1267032
El comando guestfish copy-in se comporta de forma extraña / inesperada con comodines

https://bugzilla.redhat.com/1262983
python: no se puede compilar el módulo pip si está instalado libguestfs! = pip guestfs version

https://bugzilla.redhat.com/1262127
Mejor mensaje de diagnóstico cuando virbr0 no existe

https://bugzilla.redhat.com/1261436
No se muestra ninguna advertencia cuando se convierte un invitado win7 con AVG AntiVirus instalado

https://bugzilla.redhat.com/1260778
virt-builder --ssh-inject no establece los permisos adecuados en los archivos creados

https://bugzilla.redhat.com/1260689
RFE: V2V para verificar y advertir al usuario que desactive la política de grupo y el antivirus en Windows
invitados

https://bugzilla.redhat.com/1260590
Se configuró un protocolo de gráficos y un tipo de video incorrectos para el invitado después de convertir a rhev 3.6 por
virt-v2v

https://bugzilla.redhat.com/1258342
barras adicionales en la URL de vcenter confunden virt-v2v

https://bugzilla.redhat.com/1257895
[RHEV] [V2V] virt-v2v ignora la NIC si la interfaz fuente / @ red o fuente / @ puente es una
cuerda vacía

https://bugzilla.redhat.com/1256405
virt-builder creado Fedora 22 La imagen de disco de 32 bits no se puede actualizar

https://bugzilla.redhat.com/1256222
virt-p2v sin modo GUI: error al abrir la conexión de control a $ ip: 22: inesperado ... rompt

https://bugzilla.redhat.com/1251909
La opción -oa preasignada -de qcow2 de virt-v2v no funcionó de manera eficiente

https://bugzilla.redhat.com/1250715
v2v: los espacios deben escaparse como% 20 en las rutas

https://bugzilla.redhat.com/1248678
Cierre todos los puertos entrantes en virt-p2v ISO

https://bugzilla.redhat.com/1246882
man virt-personalizar muestra la sinopsis dos veces

https://bugzilla.redhat.com/1242853
mount-loop no pudo configurar el dispositivo de bucle: no existe tal archivo o directorio

https://bugzilla.redhat.com/1237136
ERROR: no se puede manejar la desreferencia del puntero NULL del kernel en en función
__blkg_lookup

https://bugzilla.redhat.com/1230412
virt-v2v debería ignorar las entradas falsas del kernel en la configuración de grub

https://bugzilla.redhat.com/1229119
La información no relacionada en fstab hace que virt-v2v falle con información de error poco clara

https://bugzilla.redhat.com/1227609
virt-p2v: el uso del botón "Atrás" hace que la lista de salida se vuelva a llenar varias veces

https://bugzilla.redhat.com/1225789
Se instaló un controlador de video incorrecto para el invitado rhel5.11 después de la conversión a libvirt

https://bugzilla.redhat.com/1204131
RFE: virt-builder crea imágenes de qcow v3, agrega la opción de compilación para qcow v2

https://bugzilla.redhat.com/1176801
El archivo / etc / sysconfig / kernel no se actualiza cuando se convierte un invitado XenPV con un kernel normal
instalado

https://bugzilla.redhat.com/1174551
"lstatnslist" y "lstatlist" no dan un error si la API se usa incorrectamente

https://bugzilla.redhat.com/1168223
koji spin-livecd no puede construir un Live CD que funcione

https://bugzilla.redhat.com/1165785
El comando mount-loop falla: montaje falló: error desconocido -1

https://bugzilla.redhat.com/1164708
set-label solo puede establecer <= 127 bytes para btrfs y <= 126 bytes para el sistema de archivos ntfs que
No cumple con el mensaje de ayuda. También para ntfs debería dar un mensaje de advertencia cuando el
longitud> 128 bytes

https://bugzilla.redhat.com/1020216
libvirt no puede cerrar el dominio: no se pudo destruir el dominio libvirt: solicitado
la operación no es válida: el dominio no se está ejecutando

https://bugzilla.redhat.com/1011907
mount-loop no pudo configurar el dispositivo de bucle: no existe tal archivo o directorio

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.30


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.28.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
Nuevo

virt-dib(1) es una alternativa segura a la herramienta OpenStack "diskimage-builder".
Es compatible con los elementos del constructor de imágenes de disco. (Pino Toscano)

virt-get-kernel(1) extrae el kernel y el ramdisk de una imagen de disco. Anteriormente este
la funcionalidad era parte de constructor de virtudes(1), pero la nueva herramienta tiene más funciones. (Pino
toscano)

Nuevo Características in existente

virt-v2v(1) -i óvulo El modo ahora puede leer una gama más amplia de archivos OVA y también archivos descomprimidos.
(directorios).

virt-v2v ahora pasa opciones de forma segura a curl, por lo que las contraseñas, cookies, etc. no pueden ser
visto por usuarios con acceso de shell en la misma máquina.

virt-v2v tiene un nuevo --archivo de contraseña opción para permitirle pasar de forma segura una contraseña, y
para evitar un mensaje interactivo.

virt-v2v deshabilita el reinicio automático de Windows, lo que provoca fallas de conversión de depuración en Windows
más fácil.

virt-v2v ahora viene con un extenso conjunto de pruebas externas. Ver arnés de prueba virt-v2v(1).

virt-v2v permite que los controladores virtio provengan de cualquier ubicación (Roman Kagan), y los controladores pueden
leer directamente de la virtio ISO.

virt-v2v admite la conversión de Windows ≥ 8. Tenga en cuenta que esto es experimental y posiblemente
roto. Úselo con precaución.

virt-v2v ahora puede convertir invitados UEFI.

virt-p2v(1) agrega un cuadro de diálogo de configuración de red.

virt-p2v ahora tiene activadores "p2v.pre", "p2v.post" y "p2v.fail", lo que permite scripts arbitrarios
para preparar el host para la conversión y ordenarlo después de la conversión.

virt-p2v ahora usa el administrador de ventanas metacity más avanzado (en lugar de Matchbox).

virt-sysprep(1) eliminará "/ var / spool / mail / username" para las cuentas que no sean root (Hu Tao).

virt-personalizar(1) constructor de virtudes(1) y virt-sysprep tienen las siguientes opciones nuevas:

--comandos-desde-archivo
Permitir que se lean largas listas de comandos desde un archivo en lugar de desde la línea de comandos
(Pino Toscano)

--Copiar
copiar archivos dentro del invitado (Maros Zatko)

--copia
copiar archivos de host de forma recursiva en el invitado (Pino Toscano)

--moverse
mover archivos dentro del invitado (Maros Zatko)

--ssh-inyectar
inyectar claves SSH en un invitado (Pino Toscano)

--sm-adjuntar
--sm-credenciales
--sm-registro
--sm-eliminar
--sm-desregistrar
registrar y cancelar el registro de un invitado del administrador de suscripciones (Pino Toscano)

--tocar
tocar un archivo en el invitado (Pino Toscano)

--truncar
--truncar-recursivo
truncar archivos (Maros Zatko)

Mejoras en la compatibilidad con firstboot de virt-custom. En particular, Windows firstboot debería
funcionan tan bien como Linux (Roman Kagan).

virt-df(1) ahora puede usar PolicyKit, SASL y otros métodos de autenticación al obtener el
lista de dominios de libvirt.

Mejoras en la finalización de la fiesta de peces invitados (Pino Toscano).

La finalización de Bash ahora completa tanto las opciones cortas como las opciones largas (Pino Toscano).

pez invitado(1) ahora muestra una sinopsis de comando si el número de parámetros dados a un
el comando es incorrecto (Hu Tao).

virt-builder ahora admite versiones de Red Hat Enterprise Linux de nuevo a RHEL 3.

virt-builder admite invitados de SUSE que utilizan zypper (Cédric Bosdonnat).

Idioma Enlaces

Los enlaces de Java ahora incluyen Javadoc validado y otras mejoras (Pino Toscano).

Varias correcciones y mejoras a los enlaces PHP (Pino Toscano).

Inspección

La inspección ahora puede obtener iconos de RHEL 7 y CentOS 7.

/etc/favicon.png ahora se permite que sea un enlace simbólico.

Para los huéspedes basados ​​en RPM, la inspección ahora devuelve campos de RPM Epoch.

Los paquetes Debian ahora tienen campos Epoch y Version separados (Nikos Skalkotos).

Detección de OpenBSD agregada, FreeBSD y NetBSD agregadas como "distribuciones" separadas y otros BSD
mejoras de inspección y corrección de errores (Nikos Skalkotos).

Se agregó detección de CoreOS (Nikos Skalkotos).

El administrador de paquetes en Fedora ≥ 22 es "dnf".

Los invitados de ReactOS pueden ser inspeccionados (Maros Zatko).

Agregue soporte para invitados UEFI.

La inspección ahora funciona cuando los módulos del kernel están comprimidos con gzip o xz (Pino Toscano).

La inspección ahora reconoce a los invitados ppc64 y ppc64le (Maros Zatko).

La inspección enumera las aplicaciones instaladas en los invitados de Archlinux (Nikos Skalkotos).

Arquitecturas y plataformas

Las arquitecturas PPC64 (POWER7) y PPC64LE (POWER8) ahora tienen mucho mejor soporte, y
debería funcionar fuera de la caja.

Para aarch64, usamos AAVMF (una implementación UEFI de código abierto basada en OVMF) si está disponible
para hacer funcionar el aparato.

Para armv7, ahora usamos el -M virtud tipo de máquina por defecto.

Existe un mejor soporte para compilar en plataformas que no son Linux (Pino Toscano, Margaret
Lewicka).

Libguestfs ahora debería funcionar en MIPS de 32 bits little endian ("mipsel"). No he podido
para probar 64 bits o big endian.

Seguridad
CVE-2014-8484
CVE-2014-8485
Libguestfs anteriormente ejecutó el instrumentos de cuerda(1) utilidad en archivos que no son de confianza. Las cadenas podrían
analizar los encabezados BFD de una manera insegura, lo que lleva a una posible ejecución de código arbitrario.
Libguestfs ahora ejecuta cadenas con una bandera para asegurarse de que no intente analizar BFD
encabezados. Esto podría haber llevado a la explotación del dispositivo libguestfs, pero desde
libguestfs restringe aún más el dispositivo a través de la virtualización, SELinux y otros
técnicas, era poco probable que hubiera provocado una escalada de privilegios en el host.

Inyección XPath en virt-v2v
Se corrigió una posible vulnerabilidad de inyección de XPath en virt-v2v. Esto podría tener
permitió que un huésped malintencionado que estaba siendo convertido por virt-v2v construyera un
expresión XPath arbitraria que habría sido evaluada en el host (por libxml2
biblioteca vinculada al binario virt-v2v). No está claro cuáles son los efectos de este
puede ser.

Para obtener más información, consulte compromiso ascendente
https://github.com/libguestfs/libguestfs/commit/6c6ce85f94c36803fe2db35a98db436bff0c14b0

Problemas de denegación de servicio al usar "qemu-img info"
Al usar el fuzzer American Fuzzy Lop ("afl-fuzz") en el comando "qemu-img info",
Richard WM Jones descubrió que ciertos archivos pueden hacer que el programa "qemu-img" utilice
mucha memoria y tiempo (por ejemplo, 6 GB de montón y 14 segundos de tiempo de CPU en un rápido
Procesador Intel) y, en algunos casos, fallar. Dado que libguestfs puede ejecutar "qemu-img
info "en las imágenes de disco para averiguar qué contienen, esto podría causar
libguestfs para colgar o consumir mucha memoria.

Libguestfs se modificó para que use límites de recursos para limitar el espacio y el tiempo
utilizado por "qemu-img info", para evitar este problema. Si un usuario malintencionado intenta pasar uno
de estas imágenes de disco a libguestfs, "qemu-img" se bloqueará y se informará del bloqueo
de nuevo a las personas que llaman libguestfs como un mensaje de error.

API
Nuevo API

"guestfs_add_libvirt_dom"
Esto expone una API previamente privada que le permite pasar un objeto "virDomainPtr"
directamente de libvirt a libguestfs.

"guestfs_blockdev_setra"
Ajuste el parámetro de cabeza de lectura para dispositivos. Consulte el comando "blockdev --setra".

"guestfs_btrfs_balance"
"guestfs_btrfs_balance_cancel"
"guestfs_btrfs_balance_pause"
"guestfs_btrfs_balance_resume"
"guestfs_btrfs_balance_status"
Soporte de equilibrio para sistemas de archivos Btrfs (Hu Tao).

"guestfs_btrfs_filesystem_defragment"
Soporte de desfragmentación del sistema de archivos para sistemas de archivos Btrfs (Hu Tao).

"guestfs_btrfs_image"
Cree una imagen de un sistema de archivos Btrfs (Chen Hanxiao)

"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"
Cotizar soporte para sistemas de archivos Btrfs (Hu Tao).

"guestfs_btrfs_rescue_chunk_recover"
Escanee y recupere el árbol de trozos en los sistemas de archivos Btrfs (Hu Tao).

"guestfs_btrfs_rescue_super_recover"
Restaurar superbloques en sistemas de archivos Btrfs (Hu Tao).

"guestfs_btrfs_replace"
Reemplazar un dispositivo en un sistema de archivos Btrfs (Cao Jin).

"guestfs_btrfs_scrub"
"guestfs_btrfs_scrub_cancel"
"guestfs_btrfs_scrub_resume"
"guestfs_btrfs_scrub_status"
Limpiar un sistema de archivos Btrfs (Hu Tao).

"guestfs_btrfs_subvolume_get_default"
Obtenga el subvolumen predeterminado de un sistema de archivos Btrfs (Hu Tao).

"guestfs_btrfs_subvolume_show"
Enumere información detallada sobre el subvolumen de un sistema de archivos Btrfs (Hu Tao).

"guestfs_btrfstune_enable_extended_inode_refs"
"guestfs_btrfstune_enable_skinny_metadata_extent_refs"
"guestfs_btrfstune_seeding"
Varios parámetros de ajuste para sistemas de archivos Btrfs (Chen Hanxiao).

"guestfs_c_pointer"
Devuelve el puntero C al "guestfs_h *" subyacente. Esto permite el interfuncionamiento de
enlaces libguestfs con enlaces de otras bibliotecas. Para obtener más información, consulte
https://bugzilla.redhat.com/1075164

"guestfs_copy_in"
"guestfs_copy_out"
API flexibles para copiar de forma recursiva directorios de archivos entre el host y el invitado
sistema de archivos. Anteriormente, estos estaban disponibles solo como comandos guestfish, pero ahora cualquier
Los usuarios de API pueden llamarlos (Pino Toscano).

"guestfs_part_get_gpt_guid"
"guestfs_part_set_gpt_guid"
Obtenga y configure el GUID por partición de GPT.

"guestfs_part_get_mbr_part_type"
Obtenga el tipo de partición MBR (Chen Hanxiao).

"guestfs_set_uuid_random"
Establezca el UUID de un sistema de archivos en un valor generado aleatoriamente; sistemas de archivos compatibles
actualmente son particiones ext2 / 3/4, XFS, Btrfs y de intercambio. (Chen Hanxiao).

Otros API cambios

"guestfs_disk_create" ahora puede usar archivos VMDK como archivos de respaldo.

"guestfs_btrfs_subvolume_snapshot" toma parámetros opcionales adicionales (todos agregados por Hu Tao):

"ro"
para crear una instantánea Btrfs de solo lectura

"qgroupid"
para agregar la instantánea a un qgroup

"guestfs_btrfs_subvolume_create" también puede tomar el parámetro opcional "qgroupid" (Hu Tao).

"guestfs_set_uuid" puede establecer UUID de particiones de intercambio, Btrfs (Hu Tao, Chen Hanxiao).

"guestfs_copy_device_to_file" y "guestfs_copy_file_to_file" tienen un nuevo "anexo" opcional
, lo que le permite agregar al archivo de salida en lugar de truncarlo.

"guestfs_mkfs" tiene un nuevo parámetro "label" opcional para establecer la etiqueta inicial del nuevo
sistema de archivos (Pino Toscano).

"guestfs_set_label" y "guestfs_set_uuid" ahora configuran "ENOTSUP" como errno cuando no hay
Implementado soporte para el sistema de archivos del montable especificado (Chen Hanxiao).

Las variables de entorno ahora le permiten escribir "LIBGUESTFS_DEBUG = true", "LIBGUESTFS_DEBUG = 0" y
pronto.

Todas las API de "guestfs_sfdisk *" han quedado obsoletas. Porque disco sf(8) fue reescrito,
incompatible, en sentido ascendente, no recomendamos utilizar estas API en el código futuro. Utilizar el
API "guestfs_part *" como reemplazos.

Las API como "guestfs_download" no se truncan / dev / stdout or / dev / stderr al escribir a
ellos, lo que significa que si redirige stdout o stderr a un archivo, el archivo ya no es
truncado.

Build cambios
El demonio ya no usa su propia copia separada de gnulib. En cambio, comparte un solo
copiar con la biblioteca.

OCaml .no los archivos ahora se crean, por lo que los IDE y editores como emacs y vi pueden navegar por OCaml
escribe en el código fuente.

Varias correcciones para permitir diferentes compilaciones de arquitectura de host / dispositivo (Pino Toscano).

Automake ahora se usa directamente para construir todos los programas OCaml, en lugar de Makefile ad hoc
normas. Un efecto secundario de esto es habilitar advertencias en todo el código C utilizado por OCaml
.

"-fno-strict-overflow" se utiliza en toda la compilación para evitar optimizaciones de GCC dudosas.

Varias limpiezas para admitir GCC 5.

Se necesita OCaml OUnit2 para ejecutar algunas pruebas de OCaml.

Creando un enlace estáticamente libguestfs.a debería funcionar de nuevo.

El src / api-support subdirectorio y sus scripts ya no se utilizan. En su lugar, almacenamos en
los generador / actions.ml cuando se agregó la API a libguestfs.

Internacionalización
El servicio de traducción ha cambiado de Transifex a Zanata.

Hay muchas más traducciones disponibles ahora, tanto para la biblioteca como para los mensajes de herramientas y
documentación.

Internos
En todas las herramientas OCaml, ahora hay funciones comunes de "error", "advertencia", "información" y
forma de configurar y obtener el --tranquilo, -x (rastro) y -v banderas (detalladas) y resaltado de color
utilizado de forma coherente.

Las macros "COMPILE_REGEXP" se utilizan para simplificar los constructores y destructores de PCRE.

En el generador, finalmente se han implementado los argumentos "Pointer".

Los identificadores internos ya no usan guiones bajos dobles y triples (p. Ej.
"guestfs___program_name"). Estos identificadores no son válidos para los programas C99 y C ++,
aunque los compiladores los aceptarían.

El demonio ya no analiza las opciones "guestfs_ *" de / proc / cmdline. En cambio, solo se necesita
opciones de línea de comando ordinarias. El script de inicio del dispositivo cambia / proc / cmdline en demonio
opciones de la línea de comandos.

Las pruebas ahora pueden ejecutar el demonio como un "proceso cautivo", lo que permite que se ejecute directamente en
el anfitrión. La principal ventaja de esto es que podemos ejecutar valgrind directamente en el demonio durante
pruebas.

Errores fijas
https://bugzilla.redhat.com/1239053
informe de errores virt-v2v cuando Augeas no puede analizar grub.conf

https://bugzilla.redhat.com/1238053
v2v: conjunto de destino de disco duplicado cuando se convierte un invitado con cdrom adjunto

https://bugzilla.redhat.com/1237869
Los controladores Virtio no están instalados para los invitados de Windows 2008 por virt-v2v

https://bugzilla.redhat.com/1234351
virt-v2v Soporte para controladores Fedora virtio-win

https://bugzilla.redhat.com/1232192
Virt-v2v da un error en un disco en blanco: part_get_parttype: firma desconocida, del
salida: BYT;

https://bugzilla.redhat.com/1229385
virt-p2v en el modo de línea de comandos del kernel debería apagar la máquina después de la conversión

https://bugzilla.redhat.com/1229340
virt-p2v sin modo GUI agrega \ n al parámetro de línea de comando final

https://bugzilla.redhat.com/1229305
virt-sysprep en la limpieza elimina /var/spool/at/.SEQ lo que resulta en fallar en

https://bugzilla.redhat.com/1226794
"Haciendo conversión ..." todavía se muestra después de cancelar la conversión del cliente virt-p2v

https://bugzilla.redhat.com/1215042
Pérdida de memoria en virNetSocketNewConnectUNIX

https://bugzilla.redhat.com/1213324
virt-v2v: advertencia: sistema operativo invitado desconocido: windows windows 6.3 al convertir
win8,win8.1,win2012,win2012R2 to rhev

https://bugzilla.redhat.com/1213247
Las herramientas virt deben imprimir el mismo formato de cadena de versión

https://bugzilla.redhat.com/1212808
RFE: virt-constructor --touch

https://bugzilla.redhat.com/1212807
El indicador virt-builder --selinux-relabel falla en compilaciones de arquitectura cruzada

https://bugzilla.redhat.com/1212680
RFE: la consulta virt-inspector xpath debe generar un formato ordenado del elemento de consulta

https://bugzilla.redhat.com/1212152
virt-builder firstboot-command falla: nombre de archivo demasiado largo

https://bugzilla.redhat.com/1211996
virt-inspector da un arco incorrecto (ppc64) para el invitado ppc64le

https://bugzilla.redhat.com/1203817
RFE: virt-personalizar --move y --copiar

https://bugzilla.redhat.com/1201526
index-parser no puede analizar correctamente los archivos de montaje de systemd

https://bugzilla.redhat.com/1196101
virt-builder --upload option no funciona en una partición FAT

https://bugzilla.redhat.com/1196100
La opción virt-builder -x por sí sola no habilita el rastreo

https://bugzilla.redhat.com/1195204
`virt-builder` debería crear el directorio $ HOME / .cache si ya no existe

https://bugzilla.redhat.com/1193237
Se requiere la huella digital de Virt-Builder incluso cuando no se desea verificar

https://bugzilla.redhat.com/1189284
virt-resize debería conservar los UUID de la partición GPT; de lo contrario, los invitados EFI no se pueden iniciar

https://bugzilla.redhat.com/1188866
Regresión de rendimiento en virt-builder al descomprimir una imagen

https://bugzilla.redhat.com/1186800
virt-v2v debería admitir el formato gzip ova como entrada

https://bugzilla.redhat.com/1185561
virt-sparsify debería ignorar los LV de solo lectura

https://bugzilla.redhat.com/1182463
"mknod-b", "mknod-c" y "mkfifo" no eliminan los bits sin permisos del "modo"

https://bugzilla.redhat.com/1176493
virt-v2v ignora el dispositivo de sonido cuando convierte el invitado xen a kvm local

https://bugzilla.redhat.com/1175676
Error tipográfico en 'ayuda ping-daemon'

https://bugzilla.redhat.com/1175196
"parse-environment" y "parse-environment-list" no pueden analizar "LIBGUESTFS_TRACE = 0"

https://bugzilla.redhat.com/1175035
"is-blockdev" / "is-blockdev-opts" no detecta "/ dev / sda"

https://bugzilla.redhat.com/1174280
RFE: Permitir la conversión v2v de Oracle Linux 5.8 VMware VM

https://bugzilla.redhat.com/1174200
Fallo nuevo virt-v2v: CURL: Error al abrir el archivo: NSS: certificado de cliente no encontrado
(apodo no especificado): argumento no válido

https://bugzilla.redhat.com/1174123
La contraseña de gráficos desaparece después de la conversión de virt-v2v

https://bugzilla.redhat.com/1174073
La dirección de escucha para vnc se cambia después de la conversión por virt-v2v

https://bugzilla.redhat.com/1171666
la inspección piensa que la partición EFI es un sistema operativo separado

https://bugzilla.redhat.com/1171130
La conversión virt-v2v del invitado RHEL 3 falla con: Todos sus dispositivos de loopback están en
use

https://bugzilla.redhat.com/1170685
La conversión del invitado RHEL 4 falla: rpm -ql 1: kernel-utils-2.4-23.el4: virt-v2v: error:
Error de libguestfs: command_lines:

https://bugzilla.redhat.com/1170073
virt-v2v elige kernels de depuración sobre kernels que no son de depuración cuando las versiones son iguales

https://bugzilla.redhat.com/1169045
virt-sparsify: libguestfs error: qemu-img info: 'virtual-size' no es representable como
un entero de 64 bits

https://bugzilla.redhat.com/1169015
virt-resize --expand falla en ubuntu-14.04.img image (regresión)

https://bugzilla.redhat.com/1168144
advertencia: fstrim: fstrim: / sysroot /: FITRIM ioctl falló: operación no admitida
(ignorado) al convertir el invitado win2003 del servidor xen

https://bugzilla.redhat.com/1167921
p2v: cuadro de diálogo Sin conexión de red

https://bugzilla.redhat.com/1167774
virt-p2v falla con el error: "nbd.c: nbd_receive_negotiate (): L501: lectura fallida "

https://bugzilla.redhat.com/1167623
Elimine el mensaje "Si informa de errores, ejecute virt-v2v con la depuración habilitada ..." cuando
ejecutando virt-p2v

https://bugzilla.redhat.com/1167601
La ventana emergente "La conversión se realizó correctamente" incluso falla virt-p2v

https://bugzilla.redhat.com/1167302
virt-v2v: advertencia: el disco duro de ova no tiene controlador principal cuando se convierte de un archivo ova

https://bugzilla.redhat.com/1166618
virt-resize debería dar la información de advertencia detallada para que los clientes sepan lo que está sucediendo
Mal

https://bugzilla.redhat.com/1165975
El archivo "/boot/grub2/device.map" que se muestra no es correcto después de convertir un invitado rhel7 de
servidor esx

https://bugzilla.redhat.com/1165785
El comando mount-loop falla: montaje falló: error desconocido -1

https://bugzilla.redhat.com/1165569
Desactive el botón "cancelar conversión" después de que finalice la conversión virt-p2v

https://bugzilla.redhat.com/1165564
Proporcionar el botón de reinicio / apagado después de virt-p2v

https://bugzilla.redhat.com/1164853
Al arrancar en qemu no se encontraron grupos de volúmenes y no se pudieron verificar los sistemas de archivos

https://bugzilla.redhat.com/1164732
La descripción de 'help append' no es precisa, agrega las opciones del kernel a
El dispositivo libguestfs no es el kernel invitado

https://bugzilla.redhat.com/1164697
errores tipográficos en las páginas del manual

https://bugzilla.redhat.com/1164619
Inspect-get-icon falló en el invitado RHEL7

https://bugzilla.redhat.com/1162966
xfs también debería dar una advertencia para que el cliente sepa la limitación

https://bugzilla.redhat.com/1161575
Error al importar el invitado con "rtl8139" nic al servidor openstack después de convertirlo por v2v

https://bugzilla.redhat.com/1159651
El script virt-sysprep firstboot no se elimina si reinicia un invitado RHEL 7

https://bugzilla.redhat.com/1159258
El invitado esx win2008 de 32 bits no se carga después de la conversión porque el firmware no es ACPI
compatible

https://bugzilla.redhat.com/1159016
El backend de libvirt no establece la contraseña RBD

https://bugzilla.redhat.com/1158526
Utilice el archivo de contraseña en lugar de la interacción del proceso

https://bugzilla.redhat.com/1157679
virt-p2v-make-disk debería agregar firmwares

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

https://bugzilla.redhat.com/1156301
virt-inspector admite la adición de un disco remoto, pero en su página de manual -a URI / --add URI está
que falta

https://bugzilla.redhat.com/1155121
Virt-v2v fallará al usar la ruta relativa para -i ova

https://bugzilla.redhat.com/1153844
Espacio en blanco de redundancia al final del nombre del directorio cuando se usa para completar el
nombre del directorio en guestfish con un sistema de archivos xfs en guest

https://bugzilla.redhat.com/1153589
virt-v2v se bloqueará al convertir el invitado esx antes de la fase de copia del disco

https://bugzilla.redhat.com/1152998
virt-v2v / qemu-img falla en la imagen ova

https://bugzilla.redhat.com/1151910
virt-ls debería eliminar '/' en la salida cuando se especifica el nombre del directorio como /etc/

https://bugzilla.redhat.com/1151900
También debería agregar un campo para los archivos de directorio cuando se ejecuta virt-ls con la opción --csv

https://bugzilla.redhat.com/1151033
Las conversiones virt-v2v del servidor VMware vCenter se ejecutan lentamente

https://bugzilla.redhat.com/1146832
virt-v2v no puede convertir al invitado con el volumen del tipo de disco

https://bugzilla.redhat.com/1146007
Error de entrada / salida durante la conversión del invitado esx.

https://bugzilla.redhat.com/1135585
[RFE] virt-builder debería admitir la copia en un directorio / lista de archivos

https://bugzilla.redhat.com/1089566
[abrt] livecd-tools: kickstart.py:276:apply:IOError: [Errno 2] No existe tal archivo o
directorio:
'/run/media/jones/2tp001data/createlive/temp/imgcreate-_dX8Us/install_root/etc/rpm/macros.imgcreate'

https://bugzilla.redhat.com/1079625
virt-sparsify falla si un sistema de archivos btrfs contiene instantáneas de solo lectura

https://bugzilla.redhat.com/1075164
RFE: permite pasar una conexión libvirt pre-abierta desde python

https://bugzilla.redhat.com/912499
El contexto de seguridad en el archivo de imagen se restablece

https://bugzilla.redhat.com/889082
[RFE] virt-v2v debe verificar si el invitado con el mismo nombre existe en el objetivo primero y luego
transferir el disco

https://bugzilla.redhat.com/855059
RFE: virt-p2v: muestra más información sobre dispositivos de red como topología,
vinculación, etc.

https://bugzilla.redhat.com/823758
El cliente p2v debe tener las mayores restricciones numéricas para la configuración de la CPU y la memoria

https://bugzilla.redhat.com/709327
hivex no puede leer las colmenas de registro de ReactOS

https://bugzilla.redhat.com/709326
virt-inspector no puede detectar ReactOS

https://bugzilla.redhat.com/119673
la instalación a través de NFS no parece funcionar

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.28


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.26.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
Herramientas

virt-v2v(1) y virt-p2v(1) son herramientas para convertir desde hipervisores externos (como
VMware o Xen) o máquinas físicas, a KVM. Estas herramientas eran previamente un
proyecto. El código de ambas herramientas se ha integrado en el árbol libguestfs. Como parte
de la refactorización, virt-p2v se ha reescrito (de Ruby, ahora C), y virt-v2v ahora usa
Varias características modernas de qemu que lo hacen funcionar muchas veces más rápido que antes.
virt-v2v(1) puede importar desde: VMware vCenter, archivos VMware OVA, archivos de disco local, libvirt,
RHEL 5 Xen. Puede enviar a: oVirt o Red Hat Enterprise Virtualization (RHEV-M),
OpenStack Glance, libvirt, qemu, archivos de disco local.

registro virt(1) es una nueva herramienta para enumerar archivos de registro de invitados. Es compatible con una variedad de
invitados incluyendo Linux tradicional, Linux usando diario y registro de eventos de Windows.

constructor de virtudes(1) tiene una nueva opción "--machine-legible" para que sea más sencillo consumir virt-
constructor de otros programas.

Nuevo constructor de virtudes(1) y virt-personalizar(1) --chmod .

virt-sysprep(1) ahora eliminará: diarios systemd, registros anaconda, registros lightdm, debian-
archivos de instalación, registros de apt, registros de exim, registros de ConsoleKit, registros de firewalld, registros sucios,
registros proftpd, registros libvirt / libxml y varios otros archivos de registro. El virt-sysprep
La operación "cuenta de usuario" ahora puede eliminar o mantener determinadas cuentas de usuario. (Pino
Toscana).

Nuevo Guestmount(1) --fd opción, lo que le permite ejecutar guestmount cautivo bajo otra
.

virt-esparsificar(1) tiene un nuevo --tmp opción que le permite controlar con precisión dónde
los archivos se almacenan.

virt-esparsificar(1) ahora puede escribir en un dispositivo de bloque.

virt-personalizar(1) y virt-sysprep(1) ahora admite la adición de scripts de Firstboot a Windows
invitados.

virt-gato(1) virt-editar(1) virt-ls(1) ahora admite el -m opción, lo que le permite anular
inspección automática de invitados y en su lugar especificar dónde montar las particiones (Pino
Toscana).

Las herramientas virt ahora tienen salida de color: verde para OK, rojo para errores, azul para advertencias.

Idioma Enlaces

Puedes crear una distribución de Python usando "make -C python sdist"

Los enlaces Ruby han cambiado de "Test :: Unit" a "MiniTest".

Los enlaces de Java ahora son compatibles con OpenJDK 8 (Pino Toscano).

Inspección

Oracle Linux se devuelve como "oraclelinux" (Nikos Skalkotos).

Invitados de Linux que no tienen / etc / fstab ahora se puede manejar (Pino Toscano).

Minix se devuelve como "minix" (Pino Toscano).

Arquitecturas

Se ha agregado compatibilidad con Aarch64 (ARM de 64 bits).

La inspección y la llamada "guestfs_file_architecture" ahora pueden reconocer arm (32 bits) y
aarch64 invitados.

Seguridad
CVE-2014-0191 Uso de red y resolución de entidades en el análisis de XML
Libguestfs utilizó anteriormente API libxml2 inseguras para analizar libvirt XML. Estas API
predeterminado para permitir que se realicen conexiones de red cuando ciertos documentos XML estaban
presentado. Usando un documento XML con formato incorrecto, también fue posible agotar toda la CPU,
descriptores de memoria o archivo en la máquina.

Dado que el XML de libvirt proviene de una fuente confiable (el demonio libvirt) no es
pensó que esto podría haber sido explotable.

Esto se corrigió en libguestfs ≥ 1.27.9 y la solución se exportó a versiones estables ≥
1.26.2, ≥ 1.24.9, ≥ 1.22.10 y ≥ 1.20.13. (Gracias: Dan Berrange, Pino Toscano).

Shellshock (golpe CVE-2014-6271)
Este error de bash afecta indirectamente a libguestfs. Para más información, ver:
https://www.redhat.com/archives/libguestfs/2014-September/msg00252.html

API
Nuevo API

"guestfs_clear_backend_setting"
"guestfs_get_backend_setting"
"guestfs_set_backend_setting"
Utilice estas API para establecer configuraciones de backend individuales.

"guestfs_cpio_out"
Convierta un directorio dentro de la imagen del disco a formato cpio.

"guestfs_journal_get_realtime_usec"
Obtenga tiempos de diario precisos, consulte sd_journal_get_realtime_usec(3).

"guestfs_lstatns"
"guestfs_lstatnslist"
"guestfs_statns"
Versiones mejoradas de "guestfs_lstat", "guestfs_lstatlist", "guestfs_stat" que regresan
marcas de tiempo de nanosegundos.

Build cambios
Libguestfs ahora se puede construir con qemu 2.x.

Agregue soporte para empaquetar el dispositivo en Mageia (Joseph Wang, Thierry Vignaud).

Augeas es ahora una dependencia necesaria.

Flex y bison ahora son dependencias necesarias.

Internos
Linux en modo de usuario (UML) ya no es un backend compatible (aunque todavía está disponible). Eso
será apoyado nuevamente una vez que alguien intervenga y corrija varias regresiones y rupturas
en el kernel de UML (Linux).

Ahora puede conectar gdb a qemu especificando "LIBGUESTFS_BACKEND_SETTINGS = gdb"

El BIOS en serie (sgabios) ahora es utilizado por el backend de libvirt (solo en x86) para que veamos
primeros mensajes de BIOS.

Para las herramientas OCaml virt, las excepciones ahora se manejan e imprimen mediante una función común.

Una advertencia de GCC sobre marcos de pila grandes ahora está habilitada de forma predeterminada. Varios lugares que
Se han arreglado las matrices y estructuras grandes usadas en la pila.

Ahora hay una prueba para iniciar el dispositivo repetidamente. Útil para encontrar kernel
fugas. Ver: tests / qemu / qemu-boot.c

Hay una prueba para probar la velocidad de varias funciones de qemu como virtio-serial
cargas y bloquean las escrituras del dispositivo. Ver: tests / qemu / qemu-speed-test.c

Las advertencias de GCC ahora están habilitadas para enlaces OCaml-C en las herramientas OCaml virt.

El código para editar archivos utilizados por virt-editar(1) pez invitado(1) comando "editar",
virt-personalizar(1) --editar opción y más ahora se comparte entre todas estas utilidades (gracias
Pino Toscano).

Las pruebas de FUSE se reescribieron en C para garantizar un control más preciso sobre cómo se realizan las llamadas al sistema.
probado

El actualizar-bugs.sh La secuencia de comandos se ha corregido, por lo que ya no debería crear un "BUGS" vacío
archivo si el servidor Bugzilla no está disponible.

El virt-cambiar tamaño(1) las pruebas ahora utilizan un método estocástico para garantizar una mayor profundidad y amplitud
pruebas.

Cuando la red está habilitada, el dispositivo ahora usa DHCP para adquirir una dirección IP.

Si se está utilizando libvirt, el dispositivo se conectará a "virbr0" (se puede anular mediante
configurando "LIBGUESTFS_BACKEND_SETTINGS = network_bridge = "). Esto permite
conexiones de red destacadas, con ICMP en funcionamiento, ping, etc.

Errores fijas
https://bugzilla.redhat.com/1153515
vacío (pero configurado) LIBGUESTFS_BACKEND imprime libguestfs: error: backend no válido:

https://bugzilla.redhat.com/1151766
El paquete libguestfs-bash-deployment contiene un archivo
/ usr / share / bash-completacion / completions / virt-log, pero no _virt_log () función en eso
presentar

https://bugzilla.redhat.com/1151738
error tipográfico en la página del manual de virt-edit

https://bugzilla.redhat.com/1151033
Las conversiones virt-v2v del servidor VMware vCenter se ejecutan lentamente

https://bugzilla.redhat.com/1150880
virt-v2v: advertencia: pantalla fue ignorado al convertir rhel5
invitado con gráficos sdl

https://bugzilla.redhat.com/1150867
'copiar-archivo-a-archivo / src / dest' crear archivo / dest incluso si el comando 'copiar-archivo-a-archivo
/ src / dest 'falló

https://bugzilla.redhat.com/1150815
No se puede encontrar "LISTADO LARGO RECURSIVO" en 'man virt-diff'

https://bugzilla.redhat.com/1150701
virt-v2v no recorta discos de datos ni sistemas de archivos no montados

https://bugzilla.redhat.com/1150475
Exportando más de 2 discos invitados a RHEV, solo se muestra un disco después de la importación

https://bugzilla.redhat.com/1148355
virt-filesystems: nombre de vg LVM incorrecto al listar la imagen de Fedora 21 Alpha Atomic
sistemas de archivos

https://bugzilla.redhat.com/1148072
Falta la opción --no-selinux-relabel

https://bugzilla.redhat.com/1148012
RFE: Permitir que qemu-bridge-helper se utilice para implementar guestfs_set_network

https://bugzilla.redhat.com/1146815
virt-v2v imprime advertencia: / files / etc / fstab / 8 / spec hace referencia al dispositivo desconocido "cdrom"

https://bugzilla.redhat.com/1146275
regresión configurando la contraseña de root con virt-builder / virt-personalizar

https://bugzilla.redhat.com/1146017
virt-v2v -v -x durante la conversión de invitado de Windows se bloqueará en hivex: hivex_open: used
ID de bloque ……

https://bugzilla.redhat.com/1145995
Mejore la información de error al convertir Windows Guest con un sistema de archivos sucio

https://bugzilla.redhat.com/1145916
virt-v2v no puede convertir el invitado win7

https://bugzilla.redhat.com/1144891
RFE: las llamadas estadísticas no devuelven marcas de tiempo de nanosegundos

https://bugzilla.redhat.com/1144766
futimens () es una operación no operativa a través de Guestmount

https://bugzilla.redhat.com/1144201
guestfish no puede restaurar el color de salida de la terminal al salir de guestfish, si el
el color de fondo de la terminal es negro, entonces será un inconveniente

https://bugzilla.redhat.com/1143949
La opción virt-personalizar '--password-crypto' no funciona

https://bugzilla.redhat.com/1143887
Se muestra una advertencia al convertir invitados a rhev: chown: cambiando la propiedad de
'/tmp/v2v.u48xag/*.ovf': Argumento no válido

https://bugzilla.redhat.com/1143883
muestra una advertencia al convertir rhel7 guest: virt-v2v: no se pudo actualizar la consola grub2:
aug_get: ningún nodo coincidente (ignorado)

https://bugzilla.redhat.com/1143866
virt-v2v falla con un error: no se puede abrir el índice de paquetes usando db5

https://bugzilla.redhat.com/1142416
part-get-name give 'libguestfs: error: part_get_name: parted no admite el
mensaje de error de salida de máquina (-m) 'cuando se ejecuta' part-get-name / dev / sda 1 '

https://bugzilla.redhat.com/1142186
La opción virt-sysprep '--mount-options' no funciona bien

https://bugzilla.redhat.com/1142158
Comando ilegal 'part-get-name / dev / sda1 1' porque el dispositivo libguestfs se bloqueó

https://bugzilla.redhat.com/1142004
virt-v2v imprime advertencia: ADVERTENCIA: /files/boot/grub/device.map hace referencia a un dispositivo desconocido
"xvda"

https://bugzilla.redhat.com/1141723
virt-v2v: error: el disco sda no tiene un formato definido se muestra al convertir xen hvm guest

https://bugzilla.redhat.com/1141680
[RFE] virt-v2 debería admitir la conversión de un dominio utilizando el UUID del dominio en lugar de
nombre de dominio

https://bugzilla.redhat.com/1141631
[RFE] virt-v2 debería admitir la conversión de un invitado en un grupo de directorios con el uso del uuid del grupo

https://bugzilla.redhat.com/1141157
La opción virt-sysprep '--user-accounts' no funciona bien

https://bugzilla.redhat.com/1141145
virt-v2v no puede convertir invitados xen pv.

https://bugzilla.redhat.com/1141113
virt-v2v no puede convertir invitados esx

https://bugzilla.redhat.com/1140946
qemu-img muestra un mensaje de error para respaldar el archivo dos veces

https://bugzilla.redhat.com/1140894
No se generan mensajes de error si se agrega '--format qcow2' después de '-a guest.img', guest.img es
un archivo de imagen en formato raw

https://bugzilla.redhat.com/1140547
La opción virt-builder '--format' no funciona bien

https://bugzilla.redhat.com/1140156
RFE: Exportar al dominio de datos RHEV

https://bugzilla.redhat.com/1140050
No se muestra ningún error cuando se utilizan varias opciones en conflicto con virt-v2v

https://bugzilla.redhat.com/1139973
Mejore la información de error al convertir un invitado xen sin acceso SSH sin contraseña
configurado

https://bugzilla.redhat.com/1139543
Mejore la información de error al convertir un invitado sin espacio libre

https://bugzilla.redhat.com/1138586
No se muestra ningún error al convertir un invitado en ejecución con virt-v2v

https://bugzilla.redhat.com/1138184
virt-v2v fallará al convertir invitados con initramfs- * kdump.img bajo /bota

https://bugzilla.redhat.com/1138182
El invitado xen será pánico en el kernel después de que virt-v2v lo convierta

https://bugzilla.redhat.com/1130189
Mensaje molesto sobre los permisos de / dev / kvm

https://bugzilla.redhat.com/1123007
El backend 'directo' de libguestfs debería cerrar los descriptores de archivo antes de ejecutar qemu para
¡Evite las fugas! O_CLOEXEC fds

https://bugzilla.redhat.com/1122557
virt-sparsify sobrescribe los dispositivos de bloque si se utilizan como archivos de salida

https://bugzilla.redhat.com/1113156
Fstab vacío rompe la inspección de libguestfs

https://bugzilla.redhat.com/1111662
Guestfs.Error ("vgchange_uuid_all: el grupo de volúmenes tiene volúmenes lógicos activos")

https://bugzilla.redhat.com/1109174
La página del manual virt-win-reg está dañada

https://bugzilla.redhat.com/1106548
root obtiene un error al acceder a un directorio que no es root en una instantánea de VMDK img

https://bugzilla.redhat.com/1103877
Estas API también deben agregarse a la lista de comandos `guestfish -h`

https://bugzilla.redhat.com/1102448
La lista de paquetes de mageia es incorrecta

https://bugzilla.redhat.com/1102447
libguestfs 1.27.13 no se compila debido al orden de la biblioteca libxml

https://bugzilla.redhat.com/1100498
RFE: mecanismo de no sondeo para detectar el montaje de invitado, sin preparación de bifurcación

https://bugzilla.redhat.com/1099490
scrub-file no puede manejar el archivo de enlace

https://bugzilla.redhat.com/1099284
errores tipográficos en las páginas del manual

https://bugzilla.redhat.com/1098718
RFE: alias de virt-builder

https://bugzilla.redhat.com/1096465
La configuración virt-builder "proxy = off" no desactiva el proxy para descargas

https://bugzilla.redhat.com/1094746
virt-sparsify man no menciona lo que sucede con las instantáneas dentro de una imagen qcow2
(se descartan)

https://bugzilla.redhat.com/1092753
virt-builder: si varios repositorios contienen las mismas imágenes de la versión del sistema operativo, entonces son
salida en -l duplicada

https://bugzilla.redhat.com/1091803
La ejecución de tar-in-opts falló y causó que el dispositivo libguestfs fallara

https://bugzilla.redhat.com/1088424
virt-resize: libguestfs error: part_set_name: parted: / dev / sdb: Error durante
traducción: carácter ancho o multibyte no válido o incompleto

https://bugzilla.redhat.com/1088262
virt-builder no puede escribir en un dispositivo de bloque

https://bugzilla.redhat.com/1085029
Las pruebas de Ruby fallan con la última versión de Ruby

https://bugzilla.redhat.com/1079210
virt-sparsify --in-place can't sparsify tanto como debería

https://bugzilla.redhat.com/1079182
virt-df no puede informar el espacio en disco usado del invitado de Windows cuando se actualiza a 6.5

https://bugzilla.redhat.com/1077817
error de virt-builder: "error de sintaxis en la línea 3: error de sintaxis"

https://bugzilla.redhat.com/1056290
virt-sparsify sobrescribe los dispositivos de bloque si se utilizan como archivos de salida

https://bugzilla.redhat.com/812970
virt-rescue no puede establecer ≥ indicador, en Ubuntu 12.04

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.26


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.24.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
Herramientas

virt-personalizar(1) es una nueva herramienta para personalizar imágenes de disco de máquina virtual. Te deja
instalar paquetes, editar archivos de configuración, ejecutar scripts, establecer contraseñas, etc.
constructor de virtudes(1) y virt-sysprep(1) use virt-personalizar y las opciones de la línea de comandos en
todas estas herramientas ahora son idénticas.

diferencia virtual(1) es una nueva herramienta para mostrar las diferencias entre los sistemas de archivos de dos
maquinas virtuales. Es principalmente útil cuando se muestran los archivos que se han cambiado entre
instantáneas.

constructor de virtudes(1) se ha mejorado mucho. Hay muchas más formas de personalizar el
máquina virtual. Puede extraer plantillas de varios repositorios. Un paralelizado
La implementación interna de xzcat acelera la descompresión de la plantilla. Virt-builder utiliza un
optimizando el planificador para elegir la forma más rápida de construir la máquina virtual. Ahora es más fácil de usar.
virt-builder de otros programas. Se ha agregado soporte de internacionalización a
metadatos. Reetiquetado SELinux de archivos más eficiente. Puede crear invitados para múltiples
arquitecturas. Se han mejorado los mensajes de error. (Pino Toscano)

virt-esparsificar(1) tiene un nuevo --en su lugar opción. Esto dispersa una imagen en su lugar (sin
copiarlo) y también es mucho más rápido. (Mucha ayuda proporcionada por Paolo Bonzini)

virt-sysprep(1) puede eliminar y limpiar archivos bajo el control del usuario. Puede bloquear cuentas de usuario
o establecer contraseñas aleatorias en las cuentas. Puede eliminar más archivos de registro. Puede cancelar la suscripción de un invitado
de Red Hat Subscription Manager. Nueva forma flexible de habilitar y deshabilitar operaciones.
(Wan Long Gao, Pino Toscano)

virt-ganar-reg(1) le permite usar URI para especificar imágenes de disco remotas.

formato virt(1) ahora puede pasar el espacio adicional que recupera al host.

pez invitado(1) tiene variables de entorno adicionales para brindar un control preciso sobre el "> "
inmediato. Guestfish lee su archivo de configuración (rara vez utilizado) en un orden diferente ahora, por lo que
que la configuración local anula la configuración global. (Pino Toscano)

virt-make-fs(1) fue reescrito en C, pero no ha cambiado en términos de funcionalidad y comando
uso de la línea.

Idioma Enlaces

Los enlaces OCaml tienen un nuevo módulo "Guestfs.Errno", que se utiliza para verificar el número de error.
devuelto por "Guestfs.last_errno".

Las pruebas de PHP ahora funcionan. (Pino Toscano)

Inspección

La inspección puede reconocer imágenes en vivo de Debian.

Arquitecturas

ARMv7 (32 bits) ahora admite la aceleración KVM.

Se admite Aarch64 (ARM de 64 bits), pero la parte del dispositivo aún no funciona.

La compatibilidad con PPC64 se ha corregido y mejorado.

Seguridad
Denegación de servicio al inspeccionar imágenes de disco con volúmenes btrfs corruptos
Fue posible bloquear libguestfs (y programas que usan libguestfs como biblioteca) por
presentando una imagen de disco que contiene un volumen btrfs corrupto.

Esto fue causado por una desreferencia del puntero NULL que provocó una denegación de servicio, y no es
se cree que puede seguir explotándose.

Consulte la confirmación d70ceb4cbea165c960710576efac5a5716055486 para obtener la solución. Esta corrección está incluida
en las ramas estables de libguestfs ≥ 1.26.0, ≥ 1.24.6 y ≥ 1.22.8, y también en RHEL ≥ 7.0.
Las versiones anteriores de libguestfs no son vulnerables.

Mejor generación de contraseñas de raíz aleatorias y semillas aleatorias
Al generar contraseñas de raíz aleatorias y semillas aleatorias, se corrigieron dos errores que son
posiblemente relacionado con la seguridad. En primer lugar, ya no leemos bytes excesivos de
/ Dev / urandom (la mayoría de los cuales fueron simplemente desechados). En segundo lugar, cambiamos el código a
evite el sesgo de módulo. No se pensó que estos problemas fueran explotables. (Ambos cambios
sugerido por Edwin Török)

API
Los parámetros GUID ahora se validan cuando se pasan a llamadas API, mientras que anteriormente
podría haber pasado cualquier cadena. (Pino Toscano)

Nuevo API

"guestfs_add_drive_opts": nuevo parámetro "descartar"
El nuevo parámetro "descartar" permite un control detallado sobre el soporte de descarte / recorte para
un disco en particular. Esto permite que el archivo host se vuelva más escaso (o delgado
aprovisionado) cuando elimina archivos o emite la llamada API "guestfs_fstrim".

"guestfs_add_domain": nuevos parámetros: "cachemode", "descartar"
Estos parámetros se pasan al agregar los discos del dominio.

"guestfs_blkdiscard"
Descartar todos los bloques en un dispositivo guestfs. Combinado con el parámetro "descartar" anterior,
esto hace que el archivo de host sea escaso.

"guestfs_blkdiscardzeroes"
Pruebe si los bloques descartados se leen como ceros.

"guestfs_compare_ *"
"guestfs_copy_ *"
Para cada estructura devuelta a través de la API, libguestfs ahora genera "guestfs_compare_ *"
y funciones "guestfs_copy_ *" para permitirle comparar y copiar estructuras.

"guestfs_copy_attributes"
Copie atributos (como permisos, xattrs, propiedad) de un archivo a otro. (Pino
toscano)

"guestfs_disk_create"
Una API flexible para crear imágenes de disco vacías desde cero. Esto evita la necesidad de
llamar a programas externos como qemu-img(1).

"guestfs_get_backend_settings"
"guestfs_set_backend_settings"
Configuración por backend (también se puede configurar a través de la variable de entorno
"LIBGUESTFS_BACKEND_SETTINGS"). El uso principal de esto es forzar el modo TCG en el
backends basados ​​en qemu, por ejemplo:

exportar LIBGUESTFS_BACKEND = directo
exportar LIBGUESTFS_BACKEND_SETTINGS = force_tcg

"guestfs_part_get_name"
Obtenga la etiqueta o el nombre de una partición (para imágenes de disco GPT).

Build cambios
Se requieren los siguientes paquetes adicionales para construir libguestfs 1.26:

supermín ≥ 5
Se requiere la versión 5 de Supermin para construir esta versión de libguestfs.

flexión, bisonte
Virt-builder ahora usa un analizador real para analizar su archivo de metadatos, por lo que estas herramientas son
requerida.

xz Esta es ahora una dependencia de compilación requerida, donde anteriormente era (en teoría) opcional.

Internos
Extracción de mensajes de orden de compra reescrita para ser más robusta. (Pino Toscano)

"podwrapper" da un error si el --insertar or --literal no se encuentra el patrón de argumento.

Libguestfs ahora pasa el qemu -habilitar-fips opción para habilitar FIPS, si qemu lo admite.

"./configure --without-qemu" se puede utilizar si no desea especificar un valor predeterminado
hipervisor.

Ahora se crean superposiciones de copia en escritura [COW], que se utilizan, por ejemplo, para unidades de solo lectura
a través de una API de backend interna (".create_cow_overlay").

El backend de Libvirt usa algunas macros C originales para generar XML. Estos son más sencillos y seguros.

El formato de archivo ChangeLog ha cambiado. Ahora es lo mismo que "git log", en lugar de
utilizando un formato personalizado.

La puesta en marcha del aparato ha cambiado:

· El dispositivo libguestfs ahora inicializa LVM de la misma manera que se hace en
máquinas.

· El dispositivo libguestfs no escribe una cadena vacía en / proc / sys / kernel / hotplug
al arrancar.

Tenga en cuenta que deben configure su kernel para que tenga "CONFIG_UEVENT_HELPER_PATH =" ""
de lo contrario, obtendrá extraños errores de LVM (esto se aplica tanto a cualquier máquina Linux,
no solo libguestfs). (Peter Rajnoha)

Libguestfs ahora se puede construir en arcos que tienen ocamlc(1) pero no ocamlopt(1). (Hilko
Bengen, Olaf Hering)

No puede utilizar "./configure --disable-daemon --enable-appliance". No tiene sentido
de todas formas. Ahora está expresamente prohibido por el script de configuración.

El archivo de lista de paquetes usa "m4" para la expansión de macros en lugar de "cpp".

Errores fijas
https://bugzilla.redhat.com/1073906
enlaces java inspect_list_applications2 throws
java.lang.ArrayIndexOutOfBoundsException:

https://bugzilla.redhat.com/1063374
[RFE] habilita la operación de limpieza o anulación del registro del administrador de suscripciones en sysprep

https://bugzilla.redhat.com/1060404
virt-resize no conserva los nombres de las particiones GPT

https://bugzilla.redhat.com/1057504
mount-local debería dar un error más claro si la raíz no está montada

https://bugzilla.redhat.com/1056290
virt-sparsify sobrescribe los dispositivos de bloque si se utilizan como archivos de salida

https://bugzilla.redhat.com/1055452
libguestfs: error: backend no válido: dispositivo

https://bugzilla.redhat.com/1054761
guestfs_pvs imprime "dispositivo desconocido" si falta un volumen físico

https://bugzilla.redhat.com/1053847
Ajustes de reloj / temporizador predeterminados recomendados

https://bugzilla.redhat.com/1046509
ruby-libguestfs arroja "esperando 0 o 1 argumentos" en Guestfs :: Guestfs.new

https://bugzilla.redhat.com/1045450
No se puede inspeccionar la imagen del disco cirros 0.3.1 completamente

https://bugzilla.redhat.com/1045033
LIBVIRT_DEFAULT_URI = qemu: /// el sistema rompe libguestfs

https://bugzilla.redhat.com/1044585
La red virt-builder (por ejemplo, --install) no funciona si resolv.conf establece el servidor de nombres
127.0.0.1

https://bugzilla.redhat.com/1044014
Cuando SSSD está instalado, la configuración de libvirt requiere autenticación, pero no está clara
al usuario

https://bugzilla.redhat.com/1039995
virt-make-fs falla al hacer fat / vfat todo el disco: se esperaba la partición del dispositivo, no
sistema de archivos en todo el dispositivo '/ dev / sda' (use -I para anular)

https://bugzilla.redhat.com/1039540
virt-sysprep para eliminar más archivos de registro

https://bugzilla.redhat.com/1033207
RFE: la inspección de libguestfs no reconoce el Live CD de Free4NAS

https://bugzilla.redhat.com/1028660
RFE: virt-sysprep / virt-builder debería tener una opción para bloquear una cuenta de usuario

https://bugzilla.redhat.com/1026688
libguestfs falla al examinar el huésped libvirt con unidades ceph: rbd: el nombre de la imagen debe comenzar
con un '/'

https://bugzilla.redhat.com/1022431
virt-builder falla si $ HOME / .cache no existe

https://bugzilla.redhat.com/1022184
libguestfs: no utilice un archivo jar versionado

https://bugzilla.redhat.com/1020806
Todas las operaciones LVM de libguestfs fallan en Debian / Ubuntu

https://bugzilla.redhat.com/1008417
Necesita actualizar el helpout de part-set-gpt-type

https://bugzilla.redhat.com/953907
virt-sysprep no establece correctamente el nombre de host en Debian / Ubuntu

https://bugzilla.redhat.com/923355
guestfish imprime literal "\ n" en los mensajes de error

https://bugzilla.redhat.com/660687
guestmount: el comando "touch" falla: touch: tiempo de configuración de `timestamp ': no ​​válido
argumento

https://bugzilla.redhat.com/593511
Función [RFE] para obtener el nombre de la partición

https://bugzilla.redhat.com/563450
list-devices devuelve dispositivos de diferentes tipos fuera de servicio

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.24


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.22.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
El modo de usuario de Linux (UML) se puede utilizar como backend alternativo (es decir, en lugar de KVM). Esta
mejora el rendimiento, especialmente cuando se utilizan libguestfs dentro de una máquina virtual (por ejemplo, en la nube). UML
se admite como un backend de primera clase. Consulte "BACKEND LINUX EN MODO DE USUARIO" en invitados(3) para
como usar esto.

ARM (32 bits) y PPC64 ahora son totalmente compatibles.

Herramientas

constructor de virtudes(1) es una nueva herramienta para crear imágenes de máquinas virtuales. Te deja rapido
y cree invitados de forma segura y personalícelos.

Nuevo virt-sysprep(1) operaciones: eliminar archivos en / Tmp y / var / tmp. Eliminar la base de datos de RPM
archivos. Cambie las contraseñas de root y de usuario. Se eliminan más archivos de registro. Nuevas operaciones que
no están habilitados de forma predeterminada: crea UUID aleatorios para sistemas de archivos. Restablezca las reglas del cortafuegos.
(Wan Long Gao)

virt-cambiar tamaño(1) y virt-sysprep ahora pueden usar URI para especificar un disco remoto.

Utilice "guestfish -N filename = type" para crear una imagen de disco con nombre (en lugar de la predeterminada
prueba1.img etc.).

virt-esparsificar(1) ahora prueba si hay suficiente espacio en disco para completar la operación,
en lugar de posiblemente quedarse sin espacio a la mitad.

formato virt(1) y virt-make-fs(1): nuevo --etiqueta opción para configurar la etiqueta del sistema de archivos.

virt-cambiar tamaño --no escaso La bandera se puede utilizar para cambiar el tamaño de las particiones y otros objetivos que
no se ponen a cero.

Idioma Enlaces

Nuevos enlaces para el lenguaje de programación Go.

API

Soporte para el diario systemd.

"guestfs_add_drive_opts" ahora puede controlar el modo de almacenamiento en caché de qemu a través de un nuevo "modo de caché"
parámetro. Puede seleccionar un rendimiento mejorado para unidades temporales o seguridad.

"guestfs_set_label" ahora funciona para XFS y btrfs.

Nuevo evento GUESTFS_EVENT_WARNING para mensajes de advertencia.

Inspección

Mejor inspección de los huéspedes de SUSE (Olaf Hering).

Mejor soporte para Windows% systemroot% no estándar (Matthew Booth).

Informe de errores mejorado para los errores de Augeas.

Seguridad
CVE-2013-2124
https://bugzilla.redhat.com/show_bug.cgi?id=968306

Era posible una denegación de servicio al inspeccionar a ciertos huéspedes. La solución ha sido
retroportado a las sucursales 1.20 y 1.22.

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

Se corrigió el manejo inseguro de directorio temporal para guestfish remoto. La solución ha sido
retroportado a las sucursales 1.20 y 1.22.

Nuevo API
add-drive-scratch: agregue una unidad temporal temporal
etiqueta de agosto
sem-ago
journal-open: soporte para revistas de Systemd
diario-cierre
diario siguiente
salto diario
diario-obtener
diario-obtener-datos-umbral
Umbral de datos de conjunto de diario
remontar: Permitir que el indicador rw se ajuste en sistemas de archivos montados
set-uuid: establece UUID del sistema de archivos

Las API "is-file", "is-dir", "is-blockdev", "is-chardev", "is-FIFo", "is-socket" ahora tienen una
bandera extra de "followymlinks".

"add-drive" tiene un nuevo parámetro "cachemode".

Build cambios
Los siguientes paquetes son necesarios para compilar libguestfs 1.24:

Augías ≥ 1.0.0

Los siguientes paquetes opcionales se pueden agregar para mejorar la funcionalidad, pero no
necesario:

sd-diario
Para leer archivos de diario de invitados que lo usan.

url_mkvaca
Para backend UML.

rizo
gpg
xz Para virt-builder.

objetivo ≥ 1.1.1
Para enlaces de idioma Go.

Internos
Las nuevas reglas "make check- *" reemplazan a "make extra-tests". Consulte "hacer ayuda" y invitados(3) para
Detalles.

El código Perl ahora se puede validar.

El código de inspección ahora está probado por fuzz.

"make" ya no se repite en el directorio del generador en todos los demás directorios. Esta
reduce considerablemente la sobrecarga de las construcciones.

Pruebas adicionales para Augeas, hivex.

Agregue un tiempo de espera de inicio de 20 minutos a la espera de que se inicie el dispositivo.

Agregue un tiempo de espera (4 horas) a todas las pruebas para que podamos detectar el caso en el que qemu u otro
los componentes cuelgan.

Utilice kvmclock y "-cpu host". Esto mejora la estabilidad del reloj y el rendimiento general.

El modo "./configure --enable-packet-dump" es fijo.

Se ha reescrito el modo "./configure --enable-valgrind-daemon". Ahora es factible para
que los desarrolladores mantengan esta bandera habilitada en todo momento.

Los backends se han refactorizado para que sean modulares (aunque en realidad no se pueden cargar
módulos).

Cuando está habilitado, la red ahora usa la configuración del resolutor (es decir. / Etc / resolv.conf) desde el
anfitrión.

Errores fijas
https://bugzilla.redhat.com/1019889
libguestfs-tools.conf debería tener una página de manual

https://bugzilla.redhat.com/1018149
errores de valgrind en btrfs_subvolume_list

https://bugzilla.redhat.com/1002032
mke2fs no puede devolver el tipo de sistema de archivos correcto cuando el número de bloques es inferior a 2048 para
ext3

https://bugzilla.redhat.com/1001876
Actualizar el Helpout "rsync-out" para usar comodines

https://bugzilla.redhat.com/1001875
El argumento 'excluye' del alquitrán no funciona

https://bugzilla.redhat.com/1000428
virt-format utiliza un tipo de partición incorrecto para los sistemas de archivos vfat

https://bugzilla.redhat.com/1000121
El comando 'sh' antes del montaje hace que el demonio falle

https://bugzilla.redhat.com/998513
guestfish no funciona cuando se mezclan las opciones --remote y --add

https://bugzilla.redhat.com/998482
Guestfish Remote imprime "libguestfs: error: waitpid (qemu): No hay procesos secundarios"

https://bugzilla.redhat.com/995711
El comando list-filesystems falla si no hay dispositivos de bloqueo

https://bugzilla.redhat.com/994517
cache = none / O_DIRECT, la solución alternativa no funciona para imágenes con archivos de respaldo

https://bugzilla.redhat.com/989356
cap-get-file devolverá un error si el archivo no tiene capacidades configuradas

https://bugzilla.redhat.com/986877
RFE: Implementar comando set-uuid

https://bugzilla.redhat.com/986875
RFE: Implementar set-label para xfs

https://bugzilla.redhat.com/985269
No se puede establecer el valor de acl para un usuario especificado con 'acl-set-file'

https://bugzilla.redhat.com/983218
libguestfs doble libre cuando el enlace del kernel falla durante el inicio

https://bugzilla.redhat.com/981715
Hacer que el sistema de archivos xfs fallara con el tamaño de bloque especificado, da el error "opción desconocida -b"

https://bugzilla.redhat.com/981683
"hivex-commit" debería fallar con una ruta relativa

https://bugzilla.redhat.com/981663
formato de disco "qemu-img info: error de análisis JSON" cuando el archivo de destino no existe

https://bugzilla.redhat.com/978302
mke2fs-J debería dar un error significativo cuando el tipo especificado es cualquier cosa excepto
'ext {2,3,4}'

https://bugzilla.redhat.com/975797
Especificar la interfaz virtio (parámetro 'iface') rompe el backend directo - libguestfs
cuelga

https://bugzilla.redhat.com/975753
"virt-resize --expand" y "virt-resize --resize" muestra un mensaje de error para Win2008
32bit OS

https://bugzilla.redhat.com/975412
inspección: las expresiones de Augeas se rompen con augeas> = 0.10

https://bugzilla.redhat.com/974904
virt-resize --expand falla en Ubuntu Cloud Image

https://bugzilla.redhat.com/974489
Regresión: inspección de Fedora rota por el cambio de guestfs_exists a guestfs_is_file

https://bugzilla.redhat.com/972775
El comando txz-out produce un archivo comprimido con bzip2 (debe estar comprimido con xz)

https://bugzilla.redhat.com/969845
subir a un directorio ocasionalmente se cuelga en lugar de fallar

https://bugzilla.redhat.com/968875
virt-sysprep debería admitir argumentos de tipo URL

https://bugzilla.redhat.com/624334
blockdev-setbsz tiene éxito, pero no afecta a blockdev-getbsz

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.22


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.20.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
API

Acceso remoto a discos:

· Dispositivo de bloque de red (nbd)

· Shell seguro (ssh)

· HTTP y HTTPS

· FTP y FTPS

· ISCSI

· Brillo

· Ceph / rbd (Mike Kelly)

· Perro pastor

· TFTP

Los cargadores de arranque SYSLINUX y EXTLINUX ahora se pueden instalar en imágenes de disco usando la API.

La inspección ahora puede manejar sistemas de archivos como btrfs donde los subvolúmenes están separados
montable (Matthew Booth).

Los "métodos adjuntos" ahora se conocen como "backends". La compatibilidad con el código existente es
Preservado.

Los nombres de archivo pueden contener ':', siempre que se utilice una QEMU más nueva.

Herramientas

Virt-align-scan y virt-df escanean varios invitados en paralelo.

Guestmount ahora devuelve errno con precisión al espacio de usuario en casi todos los casos.

Guestfish y otras herramientas ahora pueden usar una sintaxis similar a URI para acceder a discos remotos, por ejemplo:

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

Guestfish y guestmount ahora le permiten especificar el tipo de sistema de archivos al montar, que
es más seguro (Dave Vasilevsky).

Guestfish es ahora el "shell del sistema de archivos invitado".

Guestfish solo permite 1 "verdadero" "t" "sí" "y" "en" 0 "falso" "f" "no" "n" "apagado" para booleano
valores (no distingue entre mayúsculas y minúsculas) y da un error para todas las demás cadenas.

Nueva herramienta "guestunmount" para desmontar sistemas de archivos FUSE de forma segura.

El indicador "guestmount --no-fork" evita que guestmount se demonice.

Virt-resize ahora usa copias dispersas de forma predeterminada, lo que ahorra un espacio considerable para los invitados que
están en su mayoría vacíos.

La finalización de la pestaña Bash se ha reescrito y ahora puede manejar la mayoría de las herramientas y tabular correctamente.
completar las opciones "--long". Además, los scripts de finalización de bash se cargan bajo demanda.

Idioma Enlaces

La API de Java ahora admite eventos.

El objeto Python ahora hereda de la clase base "objeto".

Los métodos de Python que anteriormente devolvían listas de tuplas ahora se pueden hacer para devolver un
Dictado de Python. Para compatibilidad con versiones anteriores, debe habilitar esto utilizando el
opción de constructor "guestfs.GuestFS (python_return_dict = True)".

Los enlaces de PHP ahora se prueban correctamente y se han corregido varias veces.

La biblioteca Perl "Sys :: Guestfs :: Lib", obsoleta durante mucho tiempo, ha sido eliminada.
https://www.redhat.com/archives/libguestfs/2013-April/msg00001.html

Ejemplos

Nuevo programa de ejemplo que muestra cómo habilitar la depuración y capturar mensajes de registro.

Otros

Los distribuidores pueden agregar paquetes adicionales arbitrarios al dispositivo haciendo lo siguiente:

./configure --with-extra-packages = "lista de nombres de paquetes"

Los distribuidores pueden utilizar:

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

para agregar opciones extra arbitrarias a supermin.

Seguridad
No se encontraron problemas de seguridad en esta versión.

Nuevo API
cp-r
extlinux
característica disponible
obtener-programa
es-dispositivo-completo
part-get-gpt-tipo
part-set-gpt-tipo
rebautizar
programa fijo
syslinux

C solamente:

guestfs_event_to_string

Internos
La herramienta febootstrap ahora se llama "supermin". Libguestfs puede usar cualquiera, pero
ahora prefiere "supermin". http://people.redhat.com/~rjones/supermin/

Se requiere libxml2 para construir libguestfs.

Se requiere el programa hivexregedit (de hivex) para compilar desde git.

Las funciones internas ya no se pueden utilizar a menos que la persona que llama defina "-DGUESTFS_PRIVATE = 1".

Habilite las advertencias del compilador C en Python, enlaces Ruby.

Falla temprano y claramente si libvirt no es compatible con qemu / KVM (por ejemplo, si libvirt predeterminado
conexión es a Xen).

La regla "make print-subdirs", útil para ejecutar pruebas de forma selectiva.

Varias correcciones para permitir compilaciones separadas (sourcedir! = Builddir).

Varias correcciones a las fijaciones de Haskell.

Las API "ln" y "ln-f" ahora capturan "errno" correctamente.

Las pruebas de vinculación de idiomas utilizan (principalmente) un esquema de numeración estándar y tienen como objetivo probar el mismo
variedad de funciones en cada idioma. También se ha reducido el número de lanzamientos necesarios.
por lo que estas pruebas deberían ejecutarse mucho más rápidamente.

El código de la biblioteca utiliza internamente GCC "__attribute __ ((cleanup))" (si está disponible) para simplificar
asignación de memoria.

Se han reorganizado los archivos de encabezado internos. Ver los comentarios en src / guestfs-internal * .h

El código interno compartido entre la biblioteca y ciertas herramientas ahora se encuentra en un
biblioteca "libutils".

Casi todos los subdirectorios ahora pueden usar compilaciones paralelas, aunque tenga en cuenta que el nivel superior
los directorios todavía se construyen en serie.

El uso de "PATH_MAX" y "NAME_MAX" se ha eliminado del código.

La API de Java ahora requiere JVM ≥ 1.6.

Forzar el uso de "pruebas en serie" con automake ≥ 1.12.

El uso de sockets en la capa de protocolo de la biblioteca se abstrae, lo que permite otros usos que no son POSIX.
capas que se agregarán en el futuro (ver src / conn-socket.c).

"qemu-img info --output json" se usa si está disponible, para un análisis más seguro de la salida
de este comando.

Las distribuciones ahora pueden usar "make INSTALLDIRS = vendor install" para colocar enlaces Ruby en vendordir.
Esto elimina un parche no ascendente que llevan Fedora y Debian.

Los archivos de registro de Valgrind ahora se escriben en tmp / valgrind-DATE-PID.log

"make clean" limpia el directorio local "tmp /".

Las pruebas de la API C se han reescrito utilizando un lenguaje generador más flexible que permite
código C arbitrario que se ejecutará durante las pruebas.

Errores fijas
https://bugzilla.redhat.com/961812
Segfault en inspect-fs.c en código montable

https://bugzilla.redhat.com/957772
error de cotización tar-out y base64-out

https://bugzilla.redhat.com/957380
libguestfs: error: btrfsvol: / dev / sda2 / root: dispositivo raíz no encontrado: solo llame a esto
función con un dispositivo raíz previamente devuelto por guestfs_inspect_os

https://bugzilla.redhat.com/948324
la inspección falla si libosinfo no está instalado

https://bugzilla.redhat.com/928995
el archivo en el archivo de tamaño cero ahora produce "vacío" en lugar de "vacío"

https://bugzilla.redhat.com/921292
qemu: no se pudo abrir la imagen del disco /tmp/.../snapshot1: Permiso denegado

https://bugzilla.redhat.com/921040
"Error: el comando externo falló, consulte los mensajes de error anteriores" El mensaje debe cambiarse

https://bugzilla.redhat.com/920225
libguestfs debería usar --output json (si es compatible) para analizar de forma segura la salida de qemu-
comando img

https://bugzilla.redhat.com/916780
solicitud de función: guestmount --with-cleanup-pipefd

https://bugzilla.redhat.com/914934
oom-killer mata a guestfsd cuando se ingresa una gran cantidad de datos

https://bugzilla.redhat.com/914931
Los comandos FileIn causan segfault si el dispositivo muere durante la copia del archivo en

https://bugzilla.redhat.com/913145
Fugas varias en virNetClientProgramCall en libvirt 1.0.2

https://bugzilla.redhat.com/912499
El contexto de seguridad en el archivo de imagen se restablece

https://bugzilla.redhat.com/909836
libguestfs-test-tool --qemu segfaults

https://bugzilla.redhat.com/909624
La recursión inesperada sin cola en recv_from_daemon da como resultado un desbordamiento de pila en muy
llamadas a la API de larga duración que envían mensajes de progreso

https://bugzilla.redhat.com/908322
virt-tar falla en nombres de directorio inexistentes "error en la codificación fragmentada en
/ home / rjones / d / libguestfs / tools / virt-tar line 272. "

https://bugzilla.redhat.com/908321
virt-cat falla en los nombres de directorio "/ dev / stdout: error en la codificación fragmentada"

https://bugzilla.redhat.com/907554
btrfs hace que el subsiguiente sistema de archivos ntfs-3g falle

https://bugzilla.redhat.com/905341
"No existe tal archivo o directorio" cuando se ejecuta "hivex-commit"

https://bugzilla.redhat.com/903620
btrfs_subvolume_list roto debido a un cambio en la salida de la lista de subvolúmenes

https://bugzilla.redhat.com/895910
montaje de invitados: rebautizar() sigue incorrectamente enlaces simbólicos

https://bugzilla.redhat.com/895905
montaje de invitados: Enlace() devuelve incorrectamente ENOENT, cuando debería ser EXDEV

https://bugzilla.redhat.com/895904
Las sumas de comprobación no pueden calcular las sumas de comprobación de todos los archivos regulares en el directorio.

https://bugzilla.redhat.com/894545
libguestfs FTBFS en Fedora 19 debido al nuevo ruby

https://bugzilla.redhat.com/890027
virt-sysprep: configurando correctamente el nombre de host, el nombre de dominio y el bonito nombre en Fedora 18

https://bugzilla.redhat.com/887971
pvcreate falla si la partición contiene una firma de intercambio

https://bugzilla.redhat.com/887520
zero_free_space: open: /sysroot//ujqqq135.rd3: No se puede asignar memoria

https://bugzilla.redhat.com/886915
libguestfs con el método adjunto libvirt falla con un error extraño si el hipervisor predeterminado es
Xen

https://bugzilla.redhat.com/847549
Agregar un disco virtio-scsi de longitud cero provoca: qemu-kvm: hw / scsi-bus.c: 1568:
scsi_req_complete: La afirmación `req-> status == -1 'falló.

https://bugzilla.redhat.com/811649
libguestfs no puede abrir imágenes de disco que son enlaces simbólicos a archivos que contienen ':'
carácter (dos puntos)

https://bugzilla.redhat.com/664558
RFE: Permitir configurar la devolución de llamada de registro en enlaces Ruby

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.20


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.18.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
libvirt y sVirt (SELinux confinamiento)

Puede opcionalmente use libvirt para iniciar y administrar el dispositivo backend de la siguiente manera:

· Configurando "LIBGUESTFS_ATTACH_METHOD = libvirt [: URI]"

· Usando "./configure --with-default-attach-method = libvirt [: URI]"

· O llamando al método API "guestfs_set_attach_method"

SVirt (confinamiento SELinux) se usa para asegurar el dispositivo libguestfs, si libvirt
backend está seleccionado.

virtio-scsi, mayores número of unidades, conectando en caliente

Virtio-scsi ahora se usa de forma predeterminada, si está disponible. Esto aumenta enormemente el número
de unidades que se pueden agregar a un solo identificador libguestfs (hasta 255).

Ahora puede conectar unidades en caliente (agregar y quitar unidades después del lanzamiento).

Libguestfs ahora puede manejar> 25 discos, en todas las API, herramientas y pruebas.

Puede etiquetar las unidades al agregarlas, luego referirse a ellas por etiqueta
(/ dev / disk / guestfs / LABEL) en lugar de tener que usar nombres de dispositivos (/ Dev / sda).

new bibliotecas Características

Las listas de control de acceso POSIX (ACL) y las capacidades del sistema de archivos Linux ahora se pueden leer y
escrito a través de la API.

Los discos dinámicos de Windows ahora son compatibles. Los metadatos solo se pueden leer (los volúmenes no se pueden
modificado o creado). Sin embargo, los datos / sistemas de archivos de los propios volúmenes pueden
montado, leído y escrito (Matthew Booth).

Hivex (edición del registro de Windows) ahora se admite directamente a través de la API, lo que hace que la lectura
o editar el Registro de Windows de forma mucho más eficiente.

Se volvieron a implementar varias API de libguestfs para que ya no tengan límites en la producción.
Las API reimplementadas son: "guestfs_cat", "guestfs_find", "guestfs_read_file",
"guestfs_read_lines", "guestfs_write", "guestfs_write_append", "guestfs_lstatlist",
"guestfs_lxattrlist", "guestfs_readlinklist", "guestfs_ls".

virtud

"guestfish touch 'win: c: \ new_file'" ahora funciona como se esperaba.

"guestfish" tiene un nuevo --la red opción, que habilita la red de usuarios en libguestfs.

Puede configurar "GUESTFISH_PS1" para que utilice mensajes elegantes en "guestfish".

Los comandos "rsync", "ssh", "less" y "lrzip" ahora están disponibles en virt-rescue. En
Además, "rsync" se puede utilizar a través de la API para realizar copias incrementales.

"virt-sparsify" usa qcow2 v3 para aumentar la eficiencia.

Mejoras de "virt-sysprep":

· Generar nuevos UUID para PV y VG

· Eliminar la ID de la máquina local (Wanlong Gao)

· Eliminar datos ABRT (Wanlong Gao)

· Eliminar claves de títeres y archivos de registro (Wanlong Gao)

· Eliminar archivos de contabilidad de procesos (Wanlong Gao)

· nuevo --primer arranque parámetro que permite scripts de firstboot para personalizar invitados

· Eliminar el campo HOSTNAME de los archivos "ifcfg-eth *" (Wanlong Gao)

· Diversas mejoras para SuSE (Olaf Hering)

· Eliminar la caché de las páginas de manual (Wanlong Gao)

· Eliminar datos de fallos generados por kexec-tools (Wanlong Gao)

"virt-make-fs" ahora puede crear disquetes virtuales (VFD).

"guestmount" tiene un --pid-archivo opción, que se puede utilizar para evitar una condición de carrera entre
desmontando el sistema de archivos y usando la imagen del disco subyacente.

idioma Enlaces

En esta versión se han añadido enlaces Lua con todas las funciones (gracias a Jerome Vuarand por
muchas sugerencias).

En Ruby, el hash de argumentos opcionales es opcional.

En Python, los argumentos opcionales ahora no usan valores "centinela" especiales, por lo que cualquier entero puede
pasar como un argumento opcional.

Los enlaces de Erlang ahora vienen con ejemplos y pruebas.

Los enlaces Erlang ahora manejan correctamente los parámetros enteros de 64 bits.

Las 'bindtests' automatizadas ahora prueban la limpieza de 64 bits en el paso de parámetros. Varios
Como resultado, se encontraron errores en los enlaces y se corrigieron.

Un mejor manejo de las funciones de bloqueo y no bloqueo debería hacer que las llamadas libguestfs sean más
eficiente.

inspección

Los invitados de Windows con registros de tamaño ilimitado ahora son compatibles. Añadiendo la API de hivex
a la API de libguestfs, es mucho más eficiente y más fácil inspeccionar y modificar el
Registro de Windows en invitados.

Mejor soporte para invitados de SuSE (Olaf Hering).

Devuelve la arquitectura de las aplicaciones instaladas (John Eckersberg).

Windows 8 ahora es compatible.

Fedora 18 ahora es compatible.

La inspección de ISO / CD / DVD ahora puede usar la base de datos libosinfo.

puertos

Libguestfs sin el dispositivo se puede compilar en Mac OS X (Masami HIRATA).

RHEL 5 ahora se admite explícitamente a través de la rama 'oldlinux' en git ascendente.

Ahora se admite PowerPC de 64 bits. También se ha examinado libguestfs en busca de errores de endianidad
y estos han sido arreglados.

demonio

Una página de manual para el demonio (invitadofsd(8)) está incluido.

Seguridad
pez invitado historia presentar

El $ HOME / .guestfish El archivo histórico ahora se crea con permisos 0600 (en lugar de 0644
antes) por lo que ya no es legible por todo el mundo.

CVE-2012-2690

Las versiones anteriores de "virt-edit" y del comando "guestfish" "edit" crearon un nuevo archivo
que contiene los cambios pero no configuró los permisos, etc. del nuevo archivo para que coincida con el
el viejo. El resultado de esto fue que si editaba un archivo sensible a la seguridad como
/ etc / shadow entonces quedaría legible para todo el mundo después de la edición.

A este problema se le asignó CVE-2012-2690 y se solucionó en libguestfs ≥ 1.16.

Para obtener más información, consulte https://bugzilla.redhat.com/show_bug.cgi?id=788642

Nuevo API
acl-eliminar-def-archivo
acl-obtener-archivo
archivo-conjunto-acl
nombre-dispositivo-canónico
cap-obtener-archivo
archivo-set-cap
crear-banderas
índice de dispositivo
disco-tiene-archivo-de-respaldo
formato de disco
tamaño-virtual-disco
sistema de archivos disponible
llenar-dir
FSTR
get-cachedir
obtener-credenciales-solicitadas-libvirt
get-libvirt-required-credential-prompt
obtener-libvirt-solicitado-credencial-desafío
obtener-libvirt-solicitado-credencial-defresult
obtener-tmpdir
hivex-cerrar
compromiso de hivex
hivex-nodo-agregar-niño
hivex-node-hijos
hivex-nodo-eliminar-niño
hivex-nodo-get-child
hivex-nodo-obtener-valor
nombre-nodo-hivex
hivex-nodo-padre
valor-conjunto-nodo-hivex
valores-nodo-hivex
hivex-abierto
hivex-raíz
clave-valor-hivex
tipo-valor-hivex
hivex-valor-utf8
valor-valor-hivex
inspeccionar-lista-aplicaciones2 (John Eckersberg)
list-ldm-volume
list-ldm-particiones
ldmtool-crear-todo
ldmtool-diskgroup-discos
nombre-grupo-de-discos-ldmtool
ldmtool-diskgroup-volúmenes
ldmtool-eliminar-todo
ldmtool-escanear
ldmtool-scan-dispositivos
ldmtool-volume-sugerencia
ldmtool-volume-particiones
ldmtool-volumen-tipo
ls0
max-discos
mke2fs (Wan Long Gao)
mk objetos perdidos y encontrados
mkswap [etiqueta agregada y argumentos opcionales uuid]
mktemp (Wan Long Gao)
nr-dispositivos
entorno de análisis
lista de entornos de análisis
rm-f
rsync
rsync-en
rsync-salida
establecer-cachedir
establecer-libvirt-compatible-credenciales
set-libvirt-required-credential
establecer-tmpdir
apagado [retroactivo a 1.16 y 1.18]
tar-in [bandera de compresión agregada]
tar-out [compresión agregada, propietario numérico, excluye banderas]
umount [fuerza agregada y argumentos opcionales perezosos]
nombre
xfs-admin (Wan Long Gao)
xfs-growfs (Wanlong Gao)
información xfs (Wanlong Gao)
xfs-reparación (Wanlong Gao)

Solo en la API de C:

guestfs_push_error_handler
invitadofs_pop_error_handler

Internos
Se requiere qemu ≥ 1.1 (se prefiere ≥ 1.2).

Se requiere febootstrap ≥ 3.20.

libvirt es opcional, pero si desea utilizar el nuevo backend libvirt para iniciar el
aparato, entonces se requeriría libvirt ≥ 0.10.2.

Coverity se ha ejecutado en la base de código completa y se han solucionado muchos problemas (gracias Ondrej
Vasik, Kamil Dudka).

Las funciones que antes no tenían optargs ahora se pueden convertir a funciones con optargs,
haciendo que la extensión de la API sea mucho más flexible. La compatibilidad con versiones anteriores de código fuente y binario es
conservado para los usuarios de la API.

La forma en que las API y las estructuras de libguestfs se representan en el generador ha cambiado
para usar una estructura OCaml en lugar de una tupla. Esto hace que las descripciones del generador sean más
flexible y más fácil de entender. Para obtener más información, consulte las confirmaciones 39d1a7db y eb185eef.

Separación del código de la biblioteca en más archivos:

· Los backends de lanzamiento ahora se encuentran en archivos separados, por ejemplo. src / launch-appliance.c,
"src / launch-libvirt.c".

· El código de acción generado ahora se divide en varios src / acción * .c archivos, para más rápido
Compilacion.

· El enorme src / guestfs.c El archivo ahora se divide en unidades lógicas más pequeñas.

POD (documentación) ahora se genera usando un programa Perl reescrito en lugar de pod2 * +
secuencias de comandos de shell.

Las páginas de manual ahora contienen fechas estables (Hilko Bengen).

Las pruebas omitidas ahora salen con el código 77, por lo que aparecen como "SKIP:" en la salida "make check".

La prueba de montaje local en paralelo se ha reescrito en C (RHBZ # 838081).

Ahora se admite Ruby 1.8.5 (aunque se prefiere Ruby ≥ 1.9).

Los enlaces de Perl se pueden desactivar mediante "./configure --disable-perl" (Wulf C. Krueger). Nota
que Perl todavía es necesario para construir libguestfs.

Los enlaces de Java ahora están habilitados / deshabilitados usando "./configure --with-java" o "./configure
--sin-java "(Wulf C. Krueger).

Nuevas opciones de configuración "./configure --enable-code-profiling" y "./configure
--capacitar-código-cobertura ".

Varias correcciones para el uso de enteros de 64 bits en enlaces de idiomas.

El backend del dispositivo ahora usa sgabios en lugar de vgabios (Dan Berrange).

La "./correr"La secuencia de comandos ahora establece suficientes variables de entorno para que pueda ejecutar OCaml, Python,
Programas Ruby, Java, GJS, Erlang, Lua.

"./correr --test "para ejecutar pruebas con un resultado mínimo. También imprime el tiempo necesario
para ejecutar cada prueba.

La "./correr"La secuencia de comandos ahora crea rutas de forma acumulativa, lo que significa que puede utilizar"./correr"
dos veces, o utilice libguestfs y libvirt "./correr"guiones juntos.

Puede extraer una lista de comandos externos requeridos por el demonio, lo que hace que la construcción del
dispositivo en ciertas distribuciones más fácil (Olaf Hering).

El comando "virt-rescue" ahora se prueba durante "make check".

El generador ahora elimina los archivos generados no utilizados. Esto ayuda al ir y venir
con git rebase, git bisect, etc.

Las pruebas ahora se ejecutan en un directorio "tmp /" de nivel superior separado en la fuente. Esto permite
directorio para ser etiquetado para SELinux (sVirt), y también facilita la limpieza.

"Hacer comprobación de sintaxis" ahora funciona en mayor medida, y hay muchos problemas en el código principal que
fueron encontrados por verificación de sintaxis se han corregido (gracias Jim Meyering).

Se ha agregado el modo Emacs (- * - foo - * -) a los archivos generados.

La salida de la barra de progreso ahora se envía a / dev / tty por lo que no termina en la salida normal de
el programa. virt-resize y virt-sparsify ahora suprimen las barras de progreso si stdout no es un
tty.

Ahora hay una opción "./configure --without-libvirt". Esto es útil para probar que
el código aún se compila sin libvirt.

Ahora hay una mini biblioteca interna para ejecutar comandos. Esto nos permite redirigir
errores de comandos externos en eventos.

El código para manejar directorios temporales y la caché del dispositivo se revisó por completo.

El código para ignorar / deshabilitar temporalmente los errores ahora se ve así:

guestfs_push_error_handler (g, NULL, NULL);
guestfs_mkdir (g, "/ foo"); / * No nos importa si esto falla. * /
guestfs_pop_error_handler (g);

El directorio "tests / extra" ha desaparecido. Las "pruebas adicionales" ahora se dividen en por separado
objetivos ejecutables, como "make check-valgrind". Utilice "hacer ayuda" para obtener un resumen de
objetivos.

La opción "lpj" se pasa al kernel del dispositivo cuando se usa TCG. Esto debería mejorar
estabilidad del reloj (gracias Marcelo Tosatti, Olaf Hering).

Errores fijas
https://bugzilla.redhat.com/882417
Las herramientas libguestfs fallan con mensajes de error extraños si TMPDIR no es una ruta absoluta

https://bugzilla.redhat.com/882299
Los discos invitados de Windows 8 no se pueden montar: "La partición NTFS está en un estado inseguro.
Reinicie y apague Windows por completo (sin hibernación ni reinicio rápido), o monte
el volumen es de solo lectura con la opción de montaje 'ro' ".

https://bugzilla.redhat.com/881953
libguestfs: migración a / etc / hostname, /etc/vconsole.conf, /etc/locale.conf

https://bugzilla.redhat.com/880801
virt-df con dos opciones -a muestra un nombre de imagen de disco incorrecto

https://bugzilla.redhat.com/879416
libguestfs-test-tool hace una pausa cuando usa la opción --help

https://bugzilla.redhat.com/876579
La API de mke2fs no aplica la traducción de nombres de dispositivos de bloque a journaldevice optarg

https://bugzilla.redhat.com/860235
La política de SELinux debería permitir que qemu escriba en inconfined_u: object_r: user_tmp_t: s0

https://bugzilla.redhat.com/859949
RFE: inspect-list-applications no devuelve la arquitectura de los paquetes RPM

https://bugzilla.redhat.com/859885
inspect-list-applications no enumera todos los paquetes RPM instalados con el mismo nombre y
diferentes versiones

https://bugzilla.redhat.com/859876
Las rutas impresas de guestfish no se canonicalizan

https://bugzilla.redhat.com/859875
La salida de la barra de progreso debe ir a tty (?) Stderr (?)

https://bugzilla.redhat.com/858696
virt-sysprep informa Guestfs.Error ("read_lines: fopen: / etc / sysconfig / network: No existe
archivo o directorio ") en algunos invitados de Fedora

https://bugzilla.redhat.com/858128
libguestfs no enumera los dispositivos agregados por add-drive-ro-with-if dos veces

https://bugzilla.redhat.com/858126
virt-inspector no funciona con algunos invitados de Windows

https://bugzilla.redhat.com/853762
virt-sparsify debería usar un método más robusto para detectar el formato de entrada

https://bugzilla.redhat.com/853393
libvirt no etiqueta la consola, los enchufes seriales

https://bugzilla.redhat.com/853159
virt-rescue en Fedora 18 está completamente roto

https://bugzilla.redhat.com/852394
La inspección de libguestfs limita los registros a 100 MiB

https://bugzilla.redhat.com/852194
virt-sparsify --compress falla si la salida es en formato raw

https://bugzilla.redhat.com/847881
RFE: permitir argumentos adicionales (como --exclude) para tar-out

https://bugzilla.redhat.com/847880
tar-out debería permitir (o forzar) --numeric-owner

https://bugzilla.redhat.com/845522
El comando guestfish "copy-out / localdir" falla con "No existe tal archivo o directorio"

https://bugzilla.redhat.com/845488
Los nombres de archivo largos en NTFS hacen que la salida de archivos tar, la copia, etc. fallen con el error "No se puede abrir:
El nombre de archivo es demasiado largo "

https://bugzilla.redhat.com/842307
RFE: necesita ayuda para diseñar e implementar la política de selinux para libguestfs / sVirt

https://bugzilla.redhat.com/840572
virt-make-fs / tar-in debería admitir vfat correctamente

https://bugzilla.redhat.com/840115
problema de guestfish touch: la API case_sensitive_path espera que el archivo exista

https://bugzilla.redhat.com/836710
Pérdida de datos al escribir en archivos de disco con formato qcow2

https://bugzilla.redhat.com/834712
lvresize, lvresize-free fallarán innecesariamente si no cambia el tamaño del LV:
"El nuevo tamaño (nn extensiones) coincide con el tamaño existente (nn extensiones)"

https://bugzilla.redhat.com/824716
compress-device-out no era compatible con bzip2

https://bugzilla.redhat.com/824043
La opción de montaje no reconocida de guestfish da un mensaje de error confuso

https://bugzilla.redhat.com/823887
Los nombres de archivo que contienen caracteres chinos no se pueden crear en sistemas de archivos vfat

https://bugzilla.redhat.com/823885
virt-make-fs no puede crear un sistema de archivos vfat que contenga sistemas de archivos con chino
personajes

https://bugzilla.redhat.com/823883
virt-make-fs -t fat falla con un oscuro mensaje de error

https://bugzilla.redhat.com/823821
La inspección falla cuando / etc / HOSTNAME está vacío

https://bugzilla.redhat.com/801117
libguestfs no puede obtener el icono para Windows 8

https://bugzilla.redhat.com/798979
Los CD de instalación de Ubuntu desde oneiric en adelante no se reconocen: "funcionamiento de arranque múltiple
los sistemas no son compatibles "

https://bugzilla.redhat.com/782167
libguestfs no reconoce los discos dinámicos de Windows en algunas configuraciones, por ejemplo. abarcado

https://bugzilla.redhat.com/713678
No todos los mensajes de febootstrap se redirigen para registrar devoluciones de llamada

https://bugzilla.redhat.com/627675
El código del inspector libguestfs no puede manejar / dev / disk / by-id /* caminos

https://bugzilla.redhat.com/602997
part-get-bootable da un resultado incorrecto con un diseño de parte desordenado

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.18


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.16.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
virtud

- virt-sysprep se ha reescrito y ampliado (gracias Wanlong Gao)
http://libguestfs.org/virt-sysprep.1.html

- virt-sparsify --zero es una nueva opción que pone a cero el nombre
partición o sistema de archivos

- virt-sparsify ahora puede dispersar de forma segura las particiones de intercambio de Linux

- virt-sparsify fijo para que se limpie después de ^ C
http://libguestfs.org/virt-sparsify.1.html

- Se proporciona una nueva herramienta 'libguestfs-make-fixed-appliance' para compilar
aparatos fijos que se pueden copiar a otras máquinas que no
tener soporte de febootstrap
http://libguestfs.org/libguestfs-make-fixed-appliance.1.html

- virt-filesystems ahora muestra los padres (contenedores) de MD
dispositivos y grupos de volumen

- virt-align-scan, se ejecuta sin argumentos, muestra información de alineación
para todos los dominios libvirt

- virt-df y virt-align-scan mostrarán información de todos
invitados incluso cuando un disco es inaccesible

- virt-rescue new - opción scratch para hacer discos de memoria virtual
https://rwmj.wordpress.com/2012/04/26/virt-rescue-scratch/#content

- virt-make-fs ahora se puede usar para crear btrfs

- virt-edit conserva los permisos, UID, GID y contexto SELinux
al editar archivos

- guestfish pasa el evento de cierre sobre stdout y remoto correctamente

- La nueva opción '--pipe-error' de guestfish le permite detectar errores en la tubería
comandos

- Guestfish globs ahora expande los nombres de los dispositivos

- Los caracteres de coma y dos puntos en los nombres de archivo ahora se manejan correctamente por
todas las herramientas virt

inspección

- soporte agregado para Fedora 17+

- soporte agregado para FreeDOS

- soporte agregado para Buildroot y Cirros

- la inspección ahora es compatible con los invitados de Windows que han sido
sysprepped (gracias Grant Williamson).

API

- Se agregó un amplio soporte para btrfs, incluida la adición de múltiples dispositivos,
fsck, instantáneas (gracias Wanlong Gao)

- la nueva API 'mount-local' trae el soporte de FUSE directamente al
API principal de libguestfs
https://rwmj.wordpress.com/2012/05/14/tip-using-mount-local-api-from-c/#content

- nueva página de manual: guestfs-rendimiento(1), que contiene rendimiento
consejos de ajuste
http://libguestfs.org/guestfs-performance.1.html

- nueva página de manual: guestfs-preguntas frecuentes(1), Preguntas frecuentes
http://libguestfs.org/guestfs-faq.1.html

- ENOTSUP (de guestfs_last_errno) ahora se devuelve para las API que
no son compatibles

ejemplos

- ejemplo 'copy_over' que muestra cómo copiar entre dos identificadores

- El programa 'display_icon' muestra el icono asociado con un invitado

- El ejemplo 'mount_local.c' muestra cómo usar la API mount-local

Seguridad
(no se encontraron ni se solucionaron problemas de seguridad en esta versión)

Nuevo API
btrfs-device-add: agrega dispositivos a un sistema de archivos btrfs.
btrfs-device-delete: Elimina dispositivos de un sistema de archivos btrfs.
btrfs-filesystem-sync: sincroniza un sistema de archivos btrfs.
btrfs-filesystem-balance: Equilibra un sistema de archivos btrfs.
btrfs-fsck: comprueba el sistema de archivos btrfs.
btrfs-set-seeding: habilita o deshabilita la propagación.
btrfs-subvolume-create: crea una instantánea de btrfs.
btrfs-subvolume-delete: elimina una instantánea de btrfs.
btrfs-subvolume-list: muestra las instantáneas y subvolúmenes de btrfs.
btrfs-subvolume-set-default: establece el subvolumen btrfs predeterminado.
btrfs-subvolume-snapshot: cree una instantánea btrfs grabable.
get-e2attrs: enumera los atributos de archivo ext2 de un archivo.
get-e2generation: Obtiene la generación de archivos ext2 de un archivo.
isoinfo, isoinfo-device: Obtiene información del encabezado de los archivos ISO.
llz: Lista de archivos con información de SELinux.
lvcreate-free: crea un volumen lógico LVM en el% de espacio libre restante.
md-stat: Devuelve los dispositivos subyacentes desde un dispositivo MD.
mkfs-brtfs: crea un sistema de archivos btrfs, con todos los parámetros ajustables.
mount-local, mount-local-run, umount-local: compatibilidad con FUSE en la API.
ntfsclone-in, ntfsclone-out: Guardar, restaurar NTFS desde la copia de seguridad.
ntfsfix: corrige errores comunes y obliga a Windows a verificar NTFS.
set-e2attrs: establece o borra los atributos del archivo ext2 de un archivo.
set-e2generation: establece la generación de archivos ext2 de un archivo.
set-label: Interfaz unificada para configurar la etiqueta del sistema de archivos.
vgmeta: Obtiene metadatos del grupo de volúmenes.
wipefs: borra las firmas del sistema de archivos de un dispositivo.
zero-free-space: espacio libre cero en un sistema de archivos.

Internos
- Se ha eliminado el subdirectorio debian /. Le recomendamos que utilice
los paquetes oficiales de Debian hechos por Hilko Bengen.
http://people.debian.org/~bengen/libguestfs/
http://packages.debian.org/search? palabras clave = libguestfs

- O_CLOEXEC / SOCK_CLOEXEC ahora se usa para casi todos los archivos
descriptores que abre la biblioteca.

- posix_fadvise se llama cuando se lee o escribe secuencialmente en grandes
archivos.

- cierre todos los descriptores de archivos y elimine todos los manejadores de señales en el
proceso de recuperación

- Se han corregido varias advertencias de gcc y errores de Coverity; muchos
También se han corregido errores de desbordamiento estricto

- use ./configure --enable-valgrind-daemon para usar valgrind en el
demonio; se han corregido muchos errores

- use ./configure --with-qemu-options para pasar opciones adicionales a qemu

- el demonio ahora tiene un tipo de búfer de cadenas de crecimiento (DECLARE_STRINGSBUF)

- el el archivo de encabezado funciona con C ++ y tenemos una regresión
prueba para esto

- varias API que ahora solo deben llamarse en el estado CONFIG
dar un error si no son

- .gitignore arreglado para usar rutas absolutas

- Se han ampliado los enlaces de gobject, incluido el mapeo de libguestfs
eventos para gobject señales (gracias Matt Booth)

- La documentación de gobject se genera correctamente (gracias Matt Booth)

- los archivos de encabezado de gobject ahora se encuentran en un subdirectorio

- La prueba CompareWithString en el generador ahora funciona

- Los tipos de campo de estructura FUInt32, FUInt64 ahora usan el tipo XDR correcto

- Las pruebas de OCaml ahora se ejecutan en código de bytes y código nativo.

- java -Xlint: se usa todo y se han corregido todas las advertencias

- faltan bmptopng, wrestool (etc.) o el error ya no se imprime
mensajes de advertencia

- ruby: use RbConfig en lugar de Config.

- PYTHONPATH lo establece./correr guión.

- La construcción de electrodomésticos ahora es segura para subprocesos.

- el dispositivo ahora usa 'ip' en lugar de 'ifconfig' y 'netstat'
comandos

- varias correcciones para que las compilaciones paralelas funcionen correctamente

- pez invitado: escuchar ahora se limpia correctamente

- se ha eliminado el estado OCUPADO

- gettextize ha sido eliminado, reemplazado por un simple Makefile.am

- El soporte de gettext ahora cubre virt-resize, virt-sparsify y virt-sysprep

- mejor soporte para la arquitectura del brazo

Errores fijas
- 822490 error virt-ls: "libguestfs: error: suma de comprobación: ruta: el parámetro no puede ser NULL"
- 816839 error de desbordamiento de datos cuando el progreso de la depuración -1
- 816098 virt-make-fs no puede crear un sistema de archivos btrfs porque no asigna suficiente espacio
- La inspección 811872 falla en ubuntu 10.04 guest con intercambio cifrado
- 811650 guestfs_last_error no configurado cuando qemu falla temprano durante el inicio
- 811649 libguestfs no puede abrir imágenes de disco que son enlaces simbólicos a archivos que contienen el carácter ':' (dos puntos)
- 811117 [RFE] [virt-sysprep] net-hwaddr no eliminado de los archivos "ifcfg- *" en rhel
- 811112 [RFE] [virt-sysprep] el nombre de host no se puede cambiar en el sistema rhel
- La inspección 809361 no reconoce Fedora 18 (grub2 + GPT)
- La opción de tamaño de bloque 807905 mkfs se rompe al crear btrfs
- 805070 virt-filesystems debería mostrar 'padres' de dispositivos LV y RAID
- 804464 libguestfs no se puede construir cuando LINGUAS es diferente a ja o uk
- La inspección de 803664 libguestfs falla en Windows XP: libguestfs: error: hivex: no se pudo localizar HKLM \ SYSTEM \ MountedDevices
- 803533 guestfish: error de escritura
- Los controladores de eventos 802389 para el evento 'cerrar' no funcionan en modo remoto
- 802109 libguestfs usa putc en stderr, da como resultado muchas escrituras individuales de 1 byte de mensajes de depuración
- 801640 [RFE] el error informado por resize2fs-M debe ser más claro
- 801298 Posible eliminación de referencias nulas y fugas de recursos
- 801273 El documento para set-pgroup debe actualizarse
- 798196 virt-resize confunde el formato y las variables output_format; using --output-format establece el formato de entrada
- 797986 virt-resize en Windows XP en estado sysprep causa BSOD "UNMOUNTABLE_BOOT_VOLUME"
- 796520 [RFE] Impide que el usuario ejecute algunos comandos de configuración del dispositivo después del inicio del dispositivo.
- Error de compilación de multiproveedor 790721: RuntimeError: link: /tmp/.guestfs-0/kernel /tmp/.guestfs-0/kernel.10139: El archivo existe
- Fallo de 789960 guestfsd cuando se intenta montar un disco que no existe
- 789504 virt-df (¿otras herramientas?) No debería darse por vencido si falta un disco invitado
- 788641 virt-edit no conserva los permisos de archivo
- La inspección de 786215 libguestfs no reconoce el sistema operativo FreeDOS
- 786188 La inspección de libguestfs no reconoce el CD de instalación de FreeDOS
- 785668 aug-defnode: bloqueo del demonio
- 784647 Libguestfs usa herramientas de red en desuso
- 769304 virt-resize en el kernel RHEL 6 no vuelve a leer la tabla de particiones
- 755729 Mensaje de error para resize2fs-M necesita ajustes
- 701814 virt-win-reg falla en un invitado libvirt que no tiene un formato de disco definido: "el parámetro de formato está vacío o contiene caracteres no permitidos"
- 679737 libguestfs: mejora el mensaje de error cuando zerofree no está disponible en el dispositivo
- 635971 glob mkfs ext2 / dev / vd [bt] 1 no se expande

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.16


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.14.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
libguestfs

- permitir que se creen sistemas de archivos XFS sobre un sistema de archivos existente
(Wan Long Gao)

- la alineación predeterminada (no especificada) para el disco parcial ha sido
cambiado a 64K para una mejor compatibilidad con conexiones de red de alta gama
STORAGE

- Nuevo prueba-guestfs(1) página de manual

- list-filesystems devuelve dispositivos MD que contienen sistemas de archivos
(Mateo Booth)

- soporte para GCC> = 4.7 (Jim Meyering)

- comprobar que el usuario no agrega la misma unidad dos veces (Wanlong Gao).

idioma Enlaces

- Enlaces experimentales de GObject, con soporte para GObject
Introspección. Ahora puede usar libguestfs desde Javascript.
Tenga en cuenta que estos no son estables y definitivos en esta versión.
(Mateo Booth).

- soporte para Ruby> = 1.9

- Las fijaciones de rubí se pueden desactivar individualmente (Hilko Bengen)

- soporte para Python 2.6, 3.x (Richard Jones, Hilko Bengen)

- soporte para PHP> = 5.4

- El nuevo hash% guestfs_introspection está disponible en los enlaces de Perl, por lo que
puede consultar qué argumentos opcionales están disponibles

inspección

- Los huéspedes con dispositivos MD pueden ser inspeccionados (Matthew Booth)

- soporte para invitados GNU / Hurd

pez invitado

- Los eventos de libguestfs (como los eventos de la barra de progreso y los mensajes de registro) pueden
ser capturado y procesado por scripts de shell definidos por el usuario.

- Los dispositivos MD se completan con pestañas (Matthew Booth)

virtud

- Nueva herramienta virt-format para borrar y hacer discos en blanco

- virt-sparsify new --compress y -o opciones para permitir la compresión
y salida de formato diferente

- virt-sparsify ahora puede detectar y esparcir archivos .vdi

- virt-sysprep ya no requiere xmlstarlet; un nuevo virt-inspector --xpath
Se ha agregado una opción para reemplazar esta funcionalidad.

- virt-rescue tiene una nueva opción --suggest que sugiere comandos de montaje
para el invitado

- virt-resize ya no requiere la biblioteca pcre OCaml

libguestfs vivir

- daemon ya no intentará editar su configuración de / etc / lvm en vivo

- solucione un problema de seguridad potencial con predecible / Tmp nombres (Steve Kemp)

Seguridad
CVE-2011-4127, RHBZ # 757071
Mitigar la posible escalada de privilegios a través de SG_IO ioctl
For more information, see: https://github.com/libguestfs/libguestfs/commit/9a5f784d511a8f00a8386f316eab41fe660430db

Nuevo API
blkid: imprime todos los atributos de un dispositivo conocido por blkid (Wanlong Gao)
e2fsck: acceso a más funciones de e2fsck (Wanlong Gao)
list-md-devices: lista de dispositivos MD de Linux (Matthew Booth)
md-create: crea un dispositivo MD
md-detail: devuelve metadatos para un dispositivo MD (Matthew Booth)
md-stop: detiene un dispositivo MD (Wanlong Gao)
tune2fs: permite ajustar los sistemas de archivos ext2 / 3/4

Internos
Git hosting se ha trasladado a http://github.com/libguestfs

Los diversos directorios de prueba se han reorganizado de forma lógica, y ahora
todos aparecen bajo 'pruebas /'.

Hay una regla de 'hacer pruebas adicionales' que ejecuta pruebas ordinarias y
pruebas adicionales, utilizando valgrind para comprobar si hay problemas de memoria.

Múltiples fugas de memoria y otros problemas encontrados por valgrind y arreglados.

Se ha reescrito el soporte para argumentos opcionales en el generador.
para proporcionar más funciones y seguridad (Matthew Booth).

Con gcc -fvisibility = hidden se usa para símbolos internos, evitando
llamada indirecta a través del PLT.

Las funciones de RHashtable se pueden probar en el generador.

La macro ADD_ARG en el demonio permite construir listas de arg sin
riesgo de rotura de la pila.

Se corrigió la generación de funciones OCaml que tienen más de 10 argumentos.

psmisc se ha agregado al dispositivo, lo que permite el uso de 'fusor',
'killall' y 'pstree' para depurar.

bindtests ahora cubren RBufferOut y argumentos opcionales (Matthew Booth).

Errores fijas
- 769680 directorios temporales creados durante la compilación del dispositivo no se limpian en caso de error
- 761460 guestfs_utimens cuelga de tuberías con nombre
- 761451 guestfs_utimens no puede establecer horas en un directorio
- 760775 "guestfish: los sistemas operativos de arranque múltiple no son compatibles con la opción -i" debería ser más explicativo
- 760669 copia de pez invitado y
- 760000 libguestfs no se puede compilar con Ruby> = 1.9
- 755729 Mensaje de error para resize2fs-M necesita ajustes
- 750889 Código de Python incompatible con Python v3.
- 596761 Ctrl- \ hace que el pez invitado se anule

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.14


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.12.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
Fijaciones Erlang.

virt-align-scan es una nueva herramienta para comprobar la alineación de
particiones dentro de máquinas virtuales o imágenes de disco.

virt-sparsify es una nueva herramienta para crear imágenes de disco de máquina virtual
escaso.

virt-sysprep es una nueva herramienta para clonar invitados a partir de una plantilla
mas simple

pez invitado

- Nuevos comandos setenv, unsetenv, para establecer variables de entorno.

- El archivo de entrada y el número de línea se imprimen en mensajes de error.

- Las barras de progreso de guestfish ahora son una "mini-biblioteca" utilizada por otros
herramientas también.

Guestmount

- la opción --live (para acceder a máquinas virtuales en vivo) ahora funciona.

virt-gato

- virt-cat ahora puede manejar rutas de Windows y letras de unidad (RHBZ # 693359).

sistemas de archivos virt

- el byte del tipo de partición MBR se muestra en - salida larga.

virt-make-fs

- virt-make-fs ahora establece correctamente el byte del tipo de partición MBR,
mejorando la compatibilidad con Windows (RHBZ # 746295).

virt-cambiar tamaño

- virt-resize ahora puede trabajar con invitados usando extendido y lógico
particiones, en particular invitados de Ubuntu.

- virt-resize ahora puede alinear la primera partición de invitados de Windows,
mejorando el desempeño. La nueva opción virt-resize --align-first
controla este comportamiento.

- La bandera virt-resize --machine-legible hace posible usar
virt-resize de otros programas.

- Las particiones ahora están alineadas a 128 sectores (generalmente 64K) por
defecto. Esto mejora la eficiencia en el almacenamiento de alta gama. El nuevo
La opción virt-resize --alignment permite que la alineación sea
equilibrado.

virt-ganar-reg

- La sintaxis para eliminar claves y valores de registro está documentada.
en la página de manual (RHBZ # 737944).

bibliotecas

- los caracteres que no se imprimen se escapan correctamente en la salida de depuración.

- GUESTFS_EVENT_ENTER es un nuevo tipo de evento generado siempre que un
Se llama a la función libguestfs.

- la biblioteca contiene sondas systemtap / DTrace.

- la biblioteca ahora se puede compilar sin hivex (RHBZ # 723474).

inspección

- Mejorar la detección de discos de Windows.

- Agrega soporte para:
ttylinux: un Linux mínimo
Mageia (gracias Michael Scherer)
OpenSUSE y zypper (gracias Michael Scherer, Vincent Untz)
Logotipos de Ubuntu (gracias Michael Scherer)
NetBSD y pkgsrc (gracias Michael Scherer)

- Manejar algunos tipos de invitados que usan / dev / root en / etc / fstab.

- Arreglado el manejo de invitados con> 26 discos (gracias Matthew Booth)

- Agregue soporte para invitados con discos HP Smart Array (gracias Matthew Booth)

febootstrap

- Las variables de entorno FEBOOTSTRAP_KERNEL, FEBOOTSTRAP_MODULES pueden
configurarse para elegir qué kernel usar para el dispositivo.

misceláneos

- El soporte de ArchLinux ahora funciona con Linux 3.0 (gracias Erik Nolte)

- discos libvirt marcados ahora se agregan readonly cuando
usando la opción virt-tools '-d'.

Seguridad
(no se encontraron ni se solucionaron problemas de seguridad en esta versión)

Nuevo API
comprimir, comprimir-dispositivo-fuera, copiar-dispositivo-a-dispositivo,
copiar-dispositivo-a-archivo, copiar-archivo-a-dispositivo, copiar-archivo-a-archivo,
get-smp, parte a partnum, set-smp.

La API de montaje ya no agrega implícitamente las opciones -o sync, noatime.

add-domain tiene un nuevo parámetro opcional 'readonlydisk' para controlar
cómo se manejan los discos.

Internos
- Se ejecutó Coverity en la fuente y se identificaron más errores y
fijo.

- Ahora se requiere la biblioteca PCRE para construir libguestfs.

- APIC es ahora el predeterminado para el dispositivo. También puede habilitar
Soporte SMP en el dispositivo.

- Los enlaces OCaml ahora adquieren correctamente el bloqueo de GC durante las devoluciones de llamada.

- Las construcciones fuera del árbol ahora deberían funcionar correctamente (gracias Hilko Bengen).

- ./configure --with-extra = "..." puede ser utilizado por los empaquetadores para configurar
la cadena de versión adicional.

- cero, API de dispositivo cero: si los bloques ya contienen ceros,
no escriba ceros, de modo que no hagamos innecesariamente el
almacenamiento subyacente no disperso.

- API is-zero, is-zero-device: optimícelas para que no se detecte
más rápido.

Errores fijas
- 748266 libguestfs debería detectar versiones de qemu que requieran la opción -machine pc
- 747290 libguestfs ignora en libvirt XML
- 747287 Mensaje de error engañoso cuando se denegó el permiso para abrir una imagen de disco
- 746295 virt-make-fs no establece el ID de partición
- 744795 guestmount --live no se puede usar
- 737944 virt-win-reg hyphen (delete key) sintaxis puede ser incorrecta y no está documentada
- 733297 los controladores de eventos ruby ​​fallan con "excepción en la devolución de llamada: tipo de argumento incorrecto Proc (datos esperados)"
- 731744 libguestfs debería escapar de los caracteres especiales / no imprimibles en la salida de depuración
- El dispositivo 729887 se bloquea al ejecutar aug_init con flags = 4
- 729075 libguestfs confunde la partición Hp_recovery con el sistema de archivos raíz de Windows
- 727178 error: luks_open: cryptsetup: error al cargar bibliotecas compartidas: libfipscheck.so.1: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
- 726739 libguestfs: error: aug_get: no hay un nodo coincidente, intentando encontrar el nombre de host
- 723474 Si hivex y / o pcre no están instalados, libguestfs no se puede compilar
- 693359 virt-cat y virt-edit no manejan correctamente las rutas NTFS sensibles a mayúsculas y minúsculas
- 678231 virt-inspector informa un UUID desconocido del sistema de archivos
- 671082 libguestfs no funciona con kernel-rt
- 666578 libguestfs: etiqueta desconocida del sistema de archivos SWAP-sda2
- 642821 virt-resize cae sobre una imagen de disco con una partición de intercambio lógica

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.12


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.10.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
pez invitado

- las cadenas de peces invitados pueden usar escapes,
p.ej. > escribir / foo "línea 1 \ nlínea 2 \ n"

- El comando guestfish write-append se puede usar para agregar archivos.

- Las cargas y descargas de archivos de larga duración se pueden cancelar a través del
API o presionando ^ C en guestfish.

- Nuevo comando "display" de guestfish para mostrar archivos gráficos
invitados internos.

- En guestfish, la finalización de pestañas ahora funciona en / dev / mapper dispositivos.

virt-inspector

- La API de inspección puede obtener un icono o logotipo para ciertos invitados.

- virt-inspector incluye el logotipo y el nombre de host de ciertos invitados.

- virt-inspector ahora puede obtener la versión y los números de lanzamiento de RPM
paquetes

- CentOS y Scientific Linux ahora se tratan como distribuciones independientes por
la API de inspección.

virt-cambiar tamaño

- virt-resize ahora puede manejar btrfs.

- La nueva opción virt-resize --ntfsresize-force permite que las máquinas virtuales de Windows
redimensionado varias veces.

Otros virtud

- guestfish, guestmount, virt-cat, virt-df, virt-edit, virt-filesystems,
virt-inspector, virt-ls y virt-rescue ahora te permiten usar
Opción "-d UUID" para especificar un invitado por UUID. Esto los hace más
robusto para usar desde otros programas.

- La opción virt-ls -lR permite la iteración de archivos complejos y el análisis de invitados.

- virt-win-reg admite HKEY_USERS \ y HKEY_USERS \ .

- nueva opción virt-win-reg --unsafe-printable-strings permite imprimible
cadenas que se mostrarán en la salida (de forma insegura: lea la documentación
antes de usar).

- virt-edit se ha reescrito en C.

API y idioma Enlaces

- Java ahora es completamente compatible.
See http://libguestfs.org/guestfs-java.3.html

- JRuby es compatible a través de los enlaces de Java.

- guestfs_close ahora aparece en los mensajes de seguimiento.

- El enlace de Python agrega el método g.close () explícito.

- Los programas de Python ahora pueden usar la nueva API de eventos.

- Python GIL se lanza durante las llamadas libguestfs, lo que permite multiproceso
Los programas de Python funcionan correctamente.

- 9pfs (sistemas de archivos Plan 9 exportados desde el host) ahora son compatibles.

- Agregue -DGUESTFS_WARN_DEPRECATED = 1 para advertir sobre el uso de API obsoletas
funciones en programas C.

- Nueva página de manual guestfs-recetas(1) con recetas.

- mkfs-opts ahora puede establecer el tamaño del inodo y el tamaño del sector en los sistemas de archivos creados
(gracias Nikita Menkovich).

- guestfs_last_errno ahora es accesible desde OCaml (como g # last_errno ()).

Seguridad
- optargs_bitmask se comprueba incluso para llamadas que no tienen opcional
argumentos. Esto cierra un posible exploit en el demonio de
personas que llaman no confiables.

Nuevo API
btrfs-filesystem-resize, get-pgroup, inspeccionar-get-icon, is-zero,
es-cero-dispositivo, lista-9p, lista-dm-dispositivos, montaje-9p, ntfsresize-opts,
set-pgroup, escribir-añadir

Internos
- Se ejecutó Coverity (una herramienta de análisis estático) a través del código base y
se hicieron muchas correcciones.

- El generador puede manejar funciones que devuelven RBufferOut y tienen
argumentos opcionales.

- Compatible con Perl 5.14.

- Compatible con gcc 4.6.

- Realizar controles de seguridad en QEMU.

- Las pruebas de API C ahora pueden probar completamente las llamadas que tienen argumentos opcionales.

- Utilice ./configure --enable-install-daemon para instalar / usr / sbin / guestfsd.

- El directorio po-docs ahora cubre todas las páginas de manual.

- stderr del proceso qemu ahora es capturado por el subsistema de eventos.

Errores fijas
- 602997 part-get-bootable da un resultado incorrecto con un diseño de parte desordenado
- 661280 virt-rescue: pánico al apagar: "/ sbin / reiniciar: El fichero o directorio no existe"
- 700369 qemu-system-x86_64 dice 'KVM no es compatible con este objetivo'
- 705200 intento de instalación de invitado da como resultado acceso denegado
- 714981 'list-filesystems' no conoce los sistemas de archivos virtio 9p ni detecta montajes existentes
- 717786 libguestfs Python bindings deben tener una llamada de cierre explícita
- 721275 virt-resize en F16 debería admitir btrfs

tortugitas reconoce para libguestfs 1.10.0


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.8.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
- Se pueden utilizar libguestfs y herramientas contra máquinas virtuales en vivo.
Consulte las opciones 'guestfish --live' y 'guestmount --live' y (para
la interfaz de bajo nivel) las nuevas APIs set-attach-method y
obtener-adjuntar-método.

- Nuevas herramientas virt:
virt-copia-entrada, virt-copia-salida, virt-tar-entrada, virt-tar-salida.

- libguestfs puede obtener las asignaciones de letras de unidad para invitados de Windows.

- virt-inspector muestra asignaciones de letras de unidad para invitados de Windows.

- Las letras de unidad ahora se pueden usar en los programas virt-edit y guestfish
al operar en invitados de Windows.

- virt-resize ahora funciona en hosts de 32 bits.

- Ahora puede inspeccionar los discos de instalación y los CD en vivo de diferentes
sistemas operativos.

- pez invitado

- guestfish, guestmount, virt-rescue ahora son compatibles con --ro y --rw
opciones, y el valor predeterminado para esto se puede elegir a través de una configuración
archivo (/etc/libguestfs-tools.conf).

- La nueva API de eventos permite registrar más de una devolución de llamada
cada evento, permite llamar a la API desde otros lenguajes,
y permite redirigir casi todos los mensajes de registro, depuración y seguimiento
de stderr.

- Mayor cumplimiento de FHS para archivos temporales, incluido el uso / var / tmp
para archivos grandes en caché que deberían sobrevivir al reinicio (en lugar de / Tmp).

- guestfish, guestmount -m option permite pasar las opciones de montaje
hasta el sistema de archivos subyacente.

- mkfs-opts permite especificar las características del sistema de archivos.

- Manejo más inteligente de los puntos de montaje, lo que permite mkmountpoint, mount
y umount-todos los comandos para trabajar juntos correctamente.

- Los mensajes de seguimiento tienen el prefijo de una cadena distinta, lo que les permite
ser fácilmente 'grep' fuera de la salida de depuración.

- guestfs_launch (comando guestfish 'ejecutar') ahora produce progreso
mensajes (una barra de progreso de pez invitado) si tarda más de 5
segundos para correr.

- Varios comandos de larga duración en los que no podemos estimar el tiempo
hasta el final, generar eventos de progreso en "modo pulso". Barra de progreso
en guestfish se ha actualizado para mostrarlos.

- Publica un nuevo código de ejemplo en: C, Perl, Python, OCaml, Ruby.

- Nuevo programa de ejemplo virt-dhcp-address.

- Los enlaces de Java y Ruby se han mejorado enormemente.

- Perl incluye una forma de obtener el errno del último error.

- Enlaces de Python ahora compatibles con rpyc (gracias Erez Shinan).

- Transifex se está utilizando ahora para gestionar traducciones.
http://www.transifex.net/projects/p/libguestfs/

- Inspection ahora es compatible con Red Hat Desktop, distribuciones de Slackware.

- La inspección ya no falla para los invitados de Windows que tienen dos o
más discos.

- La inspección ahora puede diferenciar entre Windows 2008 Server
y Windows 7.

- La inspección puede detectar aplicaciones de 32 bits instaladas en 64 bits
Windows, que se ejecuta en el emulador WOW64.

- Una serie de correcciones de protocolo ha solucionado el antiguo error RHBZ # 576879
que solía causar errores durante el comando de carga para perder
sincronización de protocolo.

- ¡Nuevo logo!

Seguridad
[ninguna]

Nuevo API
first-private, get-adtach-method, inspeccionar-get-drive-mappings,
inspeccionar-obtener-producto-variante,
inspeccionar-obtener-windows-current-control-set, next-private, resize2fs-M,
establecer-adjuntar-método.

Internos
- El archivo 'HACKING' está obsoleto. El contenido se ha movido a
una sección de la invitados(3) página de manual.

- libguestfs-test-tool simplificada. Ya no necesita la estática
binario o intenta construir un ISO.

- Los archivos generados por rpcgen se compilan con -fno-strict-aliasing
que debería ser más seguro (gracias Matt Booth).

- virt-resize se reescribió en OCaml.

- pez invitado y otras herramientas probadas con valgrind; algunas fugas de memoria
fueron arreglados.

Errores fijas
- 502533 Traducción polaca actualizada de libguestfs
- El protocolo libguestfs 576879 pierde sincronización si 'carga' antes de montar los discos
- Documento 599503 que indica que mkmountpoint y umount-all no se pueden mezclar
- 617440 guestfish: falla al expandir la tilde '~' cuando el env $ HOME no está configurado
- 664558 RFE: permite configurar la devolución de llamada de registro en enlaces Ruby
- 665358 Traducción de Punjabi completada (pa_IN)
- 666577 libguestfs: sistema de archivos desconocido / dev / fd0
- 667610 Múltiples errores, pérdidas de memoria en enlaces ruby ​​libguestfs
- El comando 668112 virt-filesystems falla en un invitado con una etiqueta de sistema de archivos corrupta
- 668574 guestfish -i está intentando montar todas las monturas de / etc / fstab y falla con un error cuando el dispositivo no existe
- 673479 Agregar una cadena compatible con grep a la salida de LIBGUESTFS_TRACE
- 674130 El código de inspección falla para el invitado de Windows con dos discos
- 682756 libguestfs rastrea segfaults cuando list-filesystems devuelve un error
- 682979 libguestfs detecta incorrectamente el escritorio de Red Hat como 'basado en redhat' en lugar de 'redhat'
- 690819 mkfs falla al crear un sistema de archivos en un dispositivo de disco cuando se usa un disco con interfaz 'ide'
- 691389 Los atributos extendidos no funcionan sobre el montaje de invitado (FUSE)
- 691724 virt-inspector informa un sistema de archivos desconocido / dev / vda1
- 692545 inspect-list-applications no detecta las aplicaciones de 32 bits instaladas en el emulador WOW64 en Windows de 64 bits
- La interfaz de Python de 693324 sfdisk solo acepta listas de tipo 'lista' para el parámetro de líneas

tortugitas reconoce para libguestfs 1.8


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.6.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
- Soporte y paquetes para Debian y Ubuntu.

- Compilaciones diarias desde el repositorio de git en Debian y Ubuntu para reducir el riesgo
de regresiones.

- Port a ArchLinux 'pacman' (gracias Thomas S Hatch).

- Las siguientes herramientas se han reescrito en C (originalmente en Perl):

. virt-gato
. virt-df
. virt-inspector
. virt-ls
. virt-rescate

- Algunas herramientas C admiten invitados encriptados automáticamente. Esto es
admitido en: guestfish, guestmount, virt-cat, virt-inspector,
virt-ls.

- Nueva herramienta virt-filesystems (en C) que reemplaza
virt-list-filesystems y virt-list-partitions, y tiene un superconjunto
de la funcionalidad de esas herramientas.

- guestfish, guestmount y las herramientas C usan la opción de línea de comando unificada
análisis, por lo que admiten muchas opciones comunes como '-a disk.img',
'-d dominio-libvirt', '-x', '-v'. La antigua opción de línea de comando
el análisis se conserva por compatibilidad en scripts, etc.

- guestfish ya no depende de Perl

- Nuevas páginas de manual que contienen ejemplos de programación: guestfs-ejemplos(3) (C / C ++),
guestfs-ocaml(3) guestfs-python(3) invitadofs-ruby(3).

- El modo de seguimiento imprime los valores de retorno de las funciones de la API.

- virt-inspector puede enumerar las aplicaciones instaladas en los invitados de Windows, junto con
con una gran cantidad de información sobre esas aplicaciones.

- Agregue soporte para inspeccionar: Linux Mint, Mandriva, FreeBSD.

- guestfish - opción rw (sin efecto actualmente) para hacer potencialmente
acceso de escritura peligroso explícito.

- guestfish --listen --csh por compatibilidad con csh, tcsh (gracias
Eric Blake).

- La primera versión upstream que introdujo cada función de API es ahora
documentado en invitados(3).

- guestfs_last_errno le permite recuperar el errno del
demonio, traducido correctamente al sistema operativo local.

- Las funciones ahora pueden tener parámetros opcionales.

- Las barras de progreso y las notificaciones de progreso ahora se pueden cargar
comandos.

- El constructor de dispositivos tiene más cuidado de no dejar archivos temporales.
alrededor en / tmp.

- Se agregaron los comandos getfattr / setfattr a virt-rescue.

- El archivo ROADMAP cubre la hoja de ruta y los objetivos para futuras versiones.

Seguridad
- Nueva sección SEGURIDAD en invitados(3) Documentación de API.

- virt-inspector ya no ejecuta ningún comando de invitado.

- El código de inspección es más cuidadoso para evitar archivos muy grandes
de huéspedes que anteriormente podrían haber causado una denegación de servicio.

- Las llamadas FUSE en guestmount ahora se rastrean cuando se usa guestmount -x.

Nuevo API
- agregar dominio
- agregar opciones de manejo
- getxattr
- inspeccionar-obtener-nombre de host
- inspeccionar-obtener-formato-paquete
- inspeccionar-obtener-gestión-de-paquetes
- inspeccionar-obtener-raíces
- inspeccionar-lista-aplicaciones
- lgetxattr
- mkfs-opciones

Internos
- Los programas en C ahora solo se vinculan con precisión con las bibliotecas que utilizan.

- Las bibliotecas PCRE, libmagic, hivex y libvirt ahora están completamente
Opcional para construir.

- Se corrigieron múltiples fugas de memoria y fugas de descriptor de archivos.

- Agregue un contenedor POD para unificar la generación de páginas de manual y archivos HTML
en todos los programas.

- La fuente incluye imágenes falsas de Fedora, Debian, Ubuntu y
Invitados de Windows.

- Los enlaces Ruby tienen la regla 'make install'.

- ahora es un solo archivo.

- no requiere encabezados XDR.

- La biblioteca ocaml xml-light ya no es necesaria para compilar (gracias
Máximo Koltsov).

- ./configure --disable - [...] para cada enlace de idioma (gracias
Máximo Koltsov).

- Se eliminó el programa antiguo ocaml-viewer (use guestfs-browser en su lugar).

- El nuevo tipo de prueba de API C 'InitScratchFS' hace que las pruebas se ejecuten un poco
mas rapido.

- Los paquetes excluidos del dispositivo ahora se enumeran en una lista separada
file appliance / excludelist.in, y se puede personalizar por distribución.

Errores fijas
- 663407 readlink y readlinklist devuelve / sysroot / en algunas rutas
- 661280 virt-rescue: pánico al apagar: "/ sbin / reiniciar: El fichero o directorio no existe"
- Suma de comprobación 657499: el tipo de suma de comprobación incorrecta hace que umount falle
- 655554 Las rutas de todo el disco no son canónicas por virt-inspector
- 654638 openssl actualizado a 1.0.0b libguestfs depende de los nombres de archivo exactos
- 652796 enlaces ruby ​​no instalados por 'make install', por lo tanto, se omiten de la distribución binaria

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.6


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.4.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
- Utilice un nuevo método para crear y almacenar en caché el dispositivo. Esta
mejora en gran medida el rendimiento de libguestfs, a menudo por un factor
de x 4 a x 5.

- Soporte para inspección de invitados (como virt-inspector) a través de lo ordinario
API y todos los enlaces de idioma. La opción 'guestfish -i' es como un lado-
efecto mucho más rápido.

- virt-inspector y la API de inspección central ahora pueden detectar invitados que ejecutan:
Fedora, Debian, Ubuntu, Windows, Red Hat Enterprise Linux, CentOS,
Linux científico, Gentoo, Pardus, Arch Linux, MeeGo.

- Soporte para cifrado de disco completo LUKS en invitados.

- Enlaces PHP.

- Mensajes de progreso (y barras de progreso en guestfish y virt-resize)
para determinadas operaciones de larga duración.

- virt-df ahora es mucho más eficiente. Utilice '--one-per-guest' para restaurar
el antiguo comportamiento de aislamiento por huésped.

- comandos guestfish 'copy-in' y 'copy-out' para copiar archivos y
directorios recursivamente dentro y fuera del invitado.

- comando guestfish 'hexedit' para realizar ediciones binarias en dispositivos y
archivos.

- Cambie la sintaxis de guestfish -i para permitir que los comandos se especifiquen en el
línea de comando (conservando la compatibilidad con versiones anteriores).

- pez invitado '-d 'para agregar discos de dominios libvirt.

- La opción guestfish '-N' admite varios tipos nuevos de imágenes de disco preparadas:
lvfs: disco con LV formateado con sistema de archivos
lv: disco con LV
bootroot: arranque + raíz
bootrootlv: arranque y root en LV

- Los comandos guestfish 'more' y 'edit' ahora funcionan con archivos arbitrarios.

- La opción guestfish '--echo-keys' le permite repetir claves / frases de contraseña
mientras los escribe.

- guestmount ahora admite las opciones -a / -d / -i, como guestfish.

- Utilice virtio-serial para las comunicaciones con el dispositivo. Esta
también tiene un beneficio de rendimiento importante.

- opción virt-edit '-b' para crear una copia de seguridad de los archivos editados.

- opción virt-edit '-e' para ediciones no interactivas de archivos.

- Capacidad para capturar volcados de núcleo desde el dispositivo (gracias Matthew Booth).

- virt-rescue ahora se apaga limpiamente (gracias Matthew Booth).

- virt-rescue ahora tiene una opción --network para habilitar el acceso a la red.

- virt-resize ahora puede manejar invitados que usan el formato de tabla de particiones GPT.

- virt-resize tiene un mejor soporte para la reducción de invitados.

- virt-resize admite invitados en formato qcow2.

- $ TMPDIR se puede utilizar para anular casi todo el uso de directorios temporales.

- Los usuarios de OCaml pueden utilizar un estilo de codificación OO alternativo, por ejemplo. g # launch ()

- La API admite llamadas que toman parámetros opcionales, por ejemplo.
$ g-> add_drive_opts ("disco", solo lectura => 1);

- La salida de seguimiento ahora escapa y acorta cadenas grandes (gracias
Mateo Booth).

- Autosync ahora está activado de forma predeterminada, lo que resulta en un comportamiento más confiable
cuando la manija está cerrada.

- La opción virt-df --uuid le permite seguir un dominio durante la migración
y renombrar.

- Traducciones de páginas de manual.

Seguridad
- CVE-2010-3851 libguestfs: falta el especificador de formato de disco al agregar un disco
https://www.redhat.com/archives/libguestfs/2010-October/msg00036.html
Esto se solucionó de manera integral en esta versión, y la solución será
retroportado a las otras ramas estables después de más pruebas.

- virt-inspector ya no se basa en un código de invitado que no es de confianza para la lista
aplicaciones en algunos invitados.

Nuevo API
descargar-desplazamiento, arquitectura de archivos, findfs-label, findfs-uuid,
inspeccionar-os, inspeccionar-obtener-archivo, inspeccionar-obtener-distro,
inspeccionar-obtener-sistemas de archivos, inspeccionar-obtener-versión-principal,
inspeccionar-obtener-versión-menor-inspeccionar-obtener-puntos de montaje,
inspeccionar-obtener-nombre-producto, inspeccionar-obtener-tipo, is-blockdev, is-chardev,
is-Fifo, is-lv, is-socket, is-symlink, list-filesystems, luks-add-key,
luks-close, luks-formato, luks-formato-cifrado, luks-kill-slot,
luks-open, luks-open-ro, lvm-clear-filter, lvm-canonical-lv-name,
lvm-set-filter, part-to-dev, pread-device, pwrite-device,
cargar-compensar

Internos
- Utilice size_t para iteradores de bucle.
- Refactorice el código de la biblioteca en archivos separados.
- Refactorice el código del generador en archivos separados.
- Generar comandos guestfish.
- El procesamiento de las opciones guestfish y guestmount está unificado.
- Cambios de protocolo:
el tamaño del mensaje de error aumentó a 64K
enviar errno a la biblioteca
- Agregue 'make bindist' para hacer una distribución binaria.
- Comportamiento más limpio bajo valgrind.
- Más pruebas de las opciones de línea de comandos de guestfish y libvirt
integración.
- Ninguna de las herramientas ya utiliza el código de inspección de Perl.

Errores fijas
- 646822 el modo de rastreo libguestfs no debería imprimir cadenas binarias largas
- 646821 virt-df debería tener la opción --uuid
- 646432 / dev / mapper las rutas no deben devolverse desde guestfs_mountpoints
- La documentación de las herramientas de 643624 libguestfs debe describir cómo citar los nombres de dominio invitados desde el shell
- 642934 No hay forma de especificar el formato de disco al agregar un disco a libguestfs
- 642933 guestfs_list_filesystems debe usarse en todos los lugares posibles
- 642932 las opciones de Guestmount deben coincidir con las opciones de Guestfish
- 642930 virt-inspector (Sys :: Guestfs :: Lib) debería usar API de inspección de C
- El código de inspección 642929 C debe ignorarse / dev / fd* en / etc / fstab
- 642826 virt-resize convierte cualquier otro formato de imagen a raw sin notificar al usuario, las instrucciones no tienen en cuenta esto
- 640961 Documento que indica que grub-install podría ser necesario para antiguos invitados de Linux después de virt-resize
- 639986 virt-df --csv no cita correctamente "en los nombres de dominio libvirt
- 639405 La creación interrumpida del dispositivo en caché deja inutilizables libguestfs
- 638901 El nombre de archivo del dispositivo no debe contener el nombre del repositorio
- 638899 / dev / mapper Las rutas no deben devolverse desde las API de inspección de C
- 636918 Actualizaciones de la traducción al español
- 636061 [abrt] guestfish-1.2.11-1.fc12: malloc_consolidate: El proceso / usr / bin / guestfish fue eliminado por la señal 11 (SIGSEGV)
- 635969 glob echo mkfs ext2 / dev / vd [bt] 1 imprime basura
- 634246 guestfs_part_get_parttype devuelve "loop" cuando se ejecuta en una partición, LV o sistema de archivos
- 633766 virt-resize - el encogimiento falla
- 633357 Actualizaciones de la traducción al español
- 633096 virt-resize calcula incorrectamente el tamaño del dispositivo de bloque, no funciona con el objetivo qcow2
- 629593 traducción al holandés agregada
- 627556 ​​Actualizaciones de las traducciones al español de libguestfs
- 626843 Actualizaciones de traducciones al español
- 619793 [RFE] Necesita una forma de determinar si un dispositivo de bloque en particular es un volumen lógico
- 618556 virt-rescue no devuelve ningún valor cero al salir
- La operación de montaje 617200 falló y se colgó en algunas imágenes que se ejecutan en modo de solo lectura
- 610880 libguestfs debería establecer permisos de lectura más amplios en tmpdir, por lo que funciona en algunas situaciones cuando se ejecuta con umask 077
- Documento 599503 que indica que mkmountpoint y umount-all no se pueden mezclar
- 571714 Al ejecutar virt-df en la imagen del disco, se vuelve a etiquetar, por lo que qemu ya no puede escribir en él.
- 502533 Traducción polaca actualizada de libguestfs

LIBERAR NOTAS PARA BIBLIOGRAFIAS 1.4


Estas notas de la versión solo cubren las diferencias con la división anterior de la rama estable / dev
(1.2.0). Para registros de cambios detallados, consulte el repositorio de git o el archivo ChangeLog
distribuido en el tarball.

Nuevo Características
- guestfish te permite elegir una imagen de disco preparada, por ejemplo:
pez invitado -N fs: ext4

- Agregue soporte de escritura al módulo guestmount (FUSE).

- virt-resize ahora puede cambiar el tamaño del contenido de particiones y lógicas
volúmenes en el huésped, y tenemos un mejor soporte para huéspedes que se reducen.

- Script de finalización de tabulación Bash para guestfish.

- Agregue soporte ZFS a virt-rescue.

- Nueva herramienta 'virt-make-fs' para crear sistemas de archivos con contenido.

- Permitir sufijos en cualquier parámetro de número de pez invitado, por ejemplo. "1M".

- El comando guestfish 'man' abre la página del manual.

- guestfish admite una sintaxis "heredoc" para cargar archivos:
subir - << _ end_ / foo
contenido
_fin_

- Algunos comandos de guestfish ahora imprimen su salida en octal o hexadecimal
donde corresponda (RHBZ # 583242).

- Permitir el prefijo del guión en la línea de comandos de guestfish. Esto ignora cualquier
error del segundo comando: (RHBZ # 578407)
pez invitado - cmd1: -cmd2: cmd3

- El comando guestfish -h / help ahora devuelve un error para no existente
comandos (RHBZ # 597145).

- Nuevo comando 'compatible' en guestfish para enumerar grupos opcionales de
comandos que son compatibles con el demonio / configuración.

- virt-inspector y guestfish -i ahora funcionan para nombres de archivo que
contener espacios (RHBZ # 507810).

- Cambie el protocolo para usar direcciones locales de enlace, para evitar
en conflicto con cualquier dirección que el anfitrión pueda estar usando
(RHBZ # 588763).

- libguestfs ahora establece la hora y zona horaria correctas en el sistema de archivos
cambios.

- Ordene los dominios en orden alfabético en virt-df.

- Haga que el comando mkfs-b funcione para FAT y NTFS mapeando el tamaño del bloque
parámetro al tamaño del clúster (RHBZ # 599464).

- Agregue números de versión a los módulos Perl (RHBZ # 521674).

- La localización ahora funciona para todas las herramientas libguestfs (RHBZ # 559963).

- Las herramientas ahora admiten máquinas virtuales de sistema de archivos en imagen (RHBZ # 590167).

- virt-list-partitions tiene una opción '-t' para mostrar el tamaño total de los discos.

- Incluya lentes Augeas adicionales en el aparato supermin (Matthew Booth).

- Agregar error y cerrar devoluciones de llamada.

- Agregue un método de cierre explícito en la API de Perl.

- Varias correcciones para la compatibilidad con RHEL 5.

- Varias correcciones para la compatibilidad con Debian / Ubuntu.

- Varias revisiones para mejorar la documentación.

Seguridad
- Arregle un DoS potencial en virt-inspector y virt-v2v si es especialmente
La imagen de disco diseñada contenía un dispositivo de caracteres en lugar de uno de los
archivos de configuración que leemos debajo / Etc (RHBZ # 582484).

Nuevo API
- aug-clear - camino despejado de Augeas
- disponible-todos-los-grupos: devuelve una lista de todos los grupos opcionales
- base64-in - carga datos codificados en base64 al archivo
- base64-out - descarga el archivo y codifica como base64
- checksum-device - calcula sumas de control sobre el contenido de un dispositivo
- checksums-out - calcula sumas de control de varios archivos en un directorio
- debug-upload - carga un archivo al dispositivo
- fallocate64 - preasignar un archivo en el sistema de archivos invitado
- patrón de relleno: rellena un archivo con un patrón repetido de bytes
- get-umask - obtiene la umask actual
- lvresize-free - expande un LV para llenar el espacio libre
- ntfsresize - cambiar el tamaño de un sistema de archivos NTFS
- ntfsresize-size - cambiar el tamaño de un sistema de archivos NTFS (con tamaño)
- part-del - eliminar una partición
- part-get-bootable - obtiene el indicador de arranque de una partición
- part-get-mbr-id - obtiene el byte de tipo MBR de una partición
- part-set-mbr-id - establece el byte de tipo MBR de una partición
- pvresize-size - cambiar el tamaño de un volumen físico (con tamaño)
- pwrite - escribe en parte de un archivo
- resize2fs-size - cambiar el tamaño de un sistema de archivos ext2 / 3/4 (con tamaño)
- txz-in - descomprime el tarball comprimido en el directorio (RHBZ # 580556)
- txz-out - empaquetar directorio en tarball comprimido (RHBZ # 580556)
- vfs-label - obtiene la etiqueta del sistema de archivos
- vfs-uuid - obtiene el UUID del sistema de archivos
- vgscan: vuelve a escanear en busca de volúmenes físicos, grupos de volúmenes y volúmenes lógicos LVM
- escribir - crear un nuevo archivo
- dispositivo cero: escribe ceros en un dispositivo completo

Internos
- Amplíe el generador para admitir la prueba de funciones opcionales.
- Controles más estrictos de los parámetros de entrada para muchas llamadas (RHBZ # 501893 RHBZ # 501894)
- Amplíe el protocolo para admitir el envío de búferes de datos de 8 bits arbitrarios.
- Enviar archivo 'BUGS' con lanzamientos. Este es un resumen de los errores en
la base de datos de Red Hat Bugzilla.
- Envíe el archivo 'RELEASE-NOTES' con las versiones, que contienen las notas de la versión.
- Unifique la construcción de dispositivos supermin en un solo lugar, en febootstrap 2.7.
- Corrija el código de protocolo para manejar el caso donde ambos extremos envían cancelar
mensajes al mismo tiempo.

Errores fijas
- 612178 guestfish: el uso de la opción -m junto con la opción --listen hace que el dispositivo muera
- 610880 libguestfs debería establecer permisos de lectura más amplios en tmpdir, por lo que funciona en algunas situaciones cuando se ejecuta con umask 077
- 604691 Los enlaces OCaml no son seguros para subprocesos
- 603870 Actualizaciones de la traducción al español
- 602592 [RFE] expone guestfs_close en enlaces de perl
- 600977 virt-df -h --csv "El argumento ... no es numérico en printf"
- 599464 mkfs-b no es compatible con vfat / ntfs
- 598807 add_cdrom no funciona en RHEL 6
- 598309 part-list y varios otros cmd fallaron en libguestfs en RHEL5
- El comando 597145 guestfish 'help' debería indicar un error en el estado de salida con un comando desconocido
- 597135 cmd de archivo de escritura guestfish no comprueba el parámetro "tamaño"
- 597118 Se debe dar una advertencia con la ayuda de mke2journal-L para la longitud de la etiqueta
- 597112 get-e2uuid debería usar blkid en lugar de "tune2fs -l" para obtener el UUID del sistema de archivos
- 596776 virt-inspector no descubre los alias de modprobe en invitados RHEL 3
- 596763 Actualizaciones de la traducción al español
- 593292 Actualizaciones de la traducción al español
- 592883 no puede editar archivos en imágenes montadas con cmd guestmount
- 592360 Actualizaciones de la traducción al español
- 591250 virt-tar imprime "tar_in: el subcomando tar falló en el directorio" si el archivo está comprimido o no en el formato correcto
- 591155 virt-tar imprime "tar_in: el subcomando tar falló en el directorio" si una imagen de disco no se puede escribir
- 591142 virt-inspector debería dar un error para imágenes de disco no reconocidas
- 590167 virt-inspector y otras herramientas virt deberían poder manejar máquinas virtuales de sistema de archivos en imagen
- 589039 guestfish read-file cmd hará que el daemon se cuelgue al leer archivos grandes
- 588851 guestfs_launch () devuelve -1, pero guestfs_last_error () == NULL
- 588763 libguestfs debe usar direcciones locales de enlace o no públicas para la red del dispositivo
- 588733 Actualizaciones de la traducción al español
- El cmd 588651 guestfish 'strings-e' no da el mensaje de error o la sugerencia adecuados
- 587484 lvresize no puede reducir el tamaño de un volumen
- 585961 Actualizaciones de la traducción al español
- 585223 ntfsresize debería admitir la reducción de sistemas de archivos
- 585222 pvresize debería admitir la reducción de PV
- 585221 resize2fs debería admitir la reducción de sistemas de archivos
- 584038 Actualizaciones de la traducción al español
- Se necesita el comando 583554 [FEAT] mknod-mode para establecer el modo explícitamente
- 583242 [RFE] guestfish debería imprimir las salidas en una base adecuada (por ejemplo, octal para los modos)
- 582993 guestfish come palabras cuando la pestaña completa las rutas sensibles entre mayúsculas y minúsculas
- 582953 Información de ayuda engañosa sobre el comando lvcreate
- El comando 582948 mknod no crea dispositivos de bloque, carácter o FIFO
- 582929 mknod no comprueba el modo no válido
- 582901 Los comandos chmod / umask de guestfish no comprueban el valor del modo no válido
- 582899 guestfish: se omite escaso en la lista de autocompletar de comandos
- Se debe cambiar el comportamiento de 582891 [Solicitud de función] y el valor de retorno de guestfish umask cmd
- 582548 [mknod] umask no debería tener efecto cuando el modo se establece explícitamente
- 582484 algunos subcomandos de guestfish no pueden manejar archivos especiales correctamente
- 582252 Actualizaciones de la traducción al español
- 581501 Actualizaciones de la traducción al español
- 580650 virt-inspector advierte "No se especifica ningún valor predeterminado de grub en /usr/lib/perl5/Sys/Guestfs/Lib.pm en [...]"
- 580556 solicitud de libguestfs para admitir archivos tar .txz
- El comando tar-in 580246 se bloquea si se carga más del espacio disponible
- 580016 aug-ls en guestfish no toma la variable augeas como argumento
- 579664 guestfish no informa del error cuando no hay suficiente espacio para la asignación de imágenes
- 579608 varios comandos en guestfish no pueden funcionar para enlaces de símbolos
- 579155 libguestfs se cuelga si qemu no se inicia (en modo vmchannel nulo)
- 578407 el prefijo '-' en el subcomando no es manejado por guestfish en modo de control remoto
- El protocolo libguestfs 576879 pierde sincronización si 'carga' antes de montar los discos
- 559963 libguestfs Los programas Perl establecen la configuración regional, pero aún así la localización no funciona
- 521674 Los módulos Perl no están versionados, pero deberían llevar números de versión
- 516096 Condición de carrera en test_swapon_label_0: / sbin / blockdev: BLKRRPART: Dispositivo o recurso ocupado
- 507810 guestfish -i / virt-inspector no puede manejar espacios en nombres de archivo
- 502533 Traducción polaca actualizada de libguestfs
- 501894 Algunos parámetros de cadena deben ser OptString
- 501893 Se deben verificar los parámetros de cadena! = NULL
- El archivo de escritura 501889 no admite cadenas que contengan ASCII NUL
- 484986 grub-install falla en virtio disk

LIBERAR NOTAS PARA HISTÓRICO VERSIONES OF BIBLIOGRAFIAS


Antes de 2010, libguestfs no tenía notas de lanzamiento oficiales ni una versión formalizada.
sistema de numeración. Sin embargo, estos son enlaces a versiones históricamente significativas.

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 (el anuncio inicial)
http://rwmj.wordpress.com/2009/04/01/libguestfs-access-and-modify-virtual-machine-disk-images/

Utilice guestfs-release-notes en línea utilizando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad




×
Anuncio
❤ ️Compre, reserve o adquiera aquí: sin costo, ayuda a mantener los servicios gratuitos.