es la herramienta de la línea de órdenes que genera los ficheros de índice que APT utiliza para acceder a la fuente de la distribución. Los ficheros de índice se deberían generar en el sitio de origen basado en el contenido de ese sitio.
apt-ftparchive
es un superconjunto del programa
dpkg-scanpackages(1), e incorpora su funcionalidad al completo mediante la orden
packages. También contiene un generador de contenidos de fichero,
contents, y un modo elaborado para realizar un «script» para el proceso de generación de un archivo completo.
Internamente,
apt-ftparchive
puede hacer uso de bases de datos binarias para almacenar los contenidos de un fichero «.deb» y no depender de ningún programa externo como
gzip(1). Cuando se realiza una generación completa, automáticamente realiza comprobaciones de cambios en los ficheros y genera los ficheros de salida comprimidos deseados.
A menos que se use la opción
-h
o
--help, una de las siguientes órdenes debe estar presente.
packages
-
La orden «packages» genera un fichero de paquete a partir de un directorio. Busca recursivamente ficheros «.deb» en el directorio proporcionado, generando un registro de paquete en la salida estándar para cada uno. Esta orden es casi un equivalente de
dpkg-scanpackages(1).
La opción
--db
se puede usar para especificar una base de datos binaria para la caché (registro de paquetes).
sources
-
La orden
sources
genera un fichero de índice de fuentes a partir de un directorio. Toma el directorio proporcionado y busca en él recursivamente ficheros «.dsc», generando un registro de fuente en la salida estándar para cada uno. Esta orden es casi un equivalente de
dpkg-scansources(1).
Si se define un fichero alternativo, se buscará un fichero de fuentes alternativo con la extensión «.src». Puede usar la opción --source-override para cambiar el fichero de fuentes alternativo que se usará.
contents
-
La orden
contents
genera un fichero de contenidos a partir de un directorio. Toma el directorio proporcionado y busca en él recursivamente ficheros «.deb», lee la lista de ficheros para cada uno, los ordena y muestra en la salida estándar la lista de ficheros que coinciden con los paquetes. Los directorios no se muestran por la salida estándar. Si varios paquetes tienen el mismo fichero, entonces cada paquete se separará por una coma en la salida.
La opción
--db
se puede usar para especificar una base de datos binaria para la caché (registro de paquetes).
release
-
The
release
command generates a Release file from a directory tree. It recursively searches the given directory for uncompressed and compressed
Packages,
Sources,
Contents,
Components
and
icons
files as well as
Release,
Index
and
md5sum.txt
files by default (APT::FTPArchive::Release::Default-Patterns). Additional filename patterns can be added by listing them in
APT::FTPArchive::Release::Patterns. It then writes to stdout a
Release
file containing (by default) an MD5, SHA1, SHA256 and SHA512 digest for each file.
Los valores para los campos de metadatos adicionales en el fichero «Release» se toman de las variables correspondientes en
APT::FTPArchive::Release, por ejemplo
APT::FTPArchive::Release::Origin. Los campos permitidos son:
Origin,
Label,
Suite,
Version,
Codename,
Date,
NotAutomatic,
ButAutomaticUpgrades,
Acquire-By-Hash,
Valid-Until,
Signed-By,
Architectures,
Components
y
Description.
generate
-
La orden
generate
se ha diseñado para ejecutarse desde un script de cron y genera los índices de acuerdo a lo proporcionado en el fichero de configuración. El lenguaje de configuración proporciona una forma flexible de definir qué ficheros de índice se generarán a partir de qué directorios, así como proporcionar una forma sencilla de mantener la configuración necesaria.
clean
-
La orden
clean
ordena las bases de datos que usa el fichero de configuración proporcionado, eliminando los registros que no son necesarios.
LA CONFIGURACIÓN DE «GENERATE»
La orden
generate
usa un fichero de configuración para describir los ficheros que se generarán. Sigue el típico formato de configuración de ISC presente en las herramientas de ISC como bind 8 y dhcpd.
apt.conf(5)
contiene una descripción de la sintaxis. Tenga en cuenta que la configuración de «generate» se analiza por sección, pero
apt.conf(5)
se analiza por árbol. Esto sólo afecta a cómo se maneja el ámbito de la etiqueta.
La configuración de «generate» tiene cuatro secciones diferentes, descritas a continuación.
Sección Dir
La sección
Dir
define los directorios estándar necesarios para ubicar los ficheros necesarios durante el proceso de generación. A estos directorios se les añaden ciertas rutas relativas definidas en secciones posteriores para producir una ruta absoluta.
ArchiveDir
-
Define la raíz del archivo FTP; en una configuración estándar de Debian éste es el directorio que contiene el
ls-LR
y los nodos «dist».
OverrideDir
-
Define la ubicación de los ficheros alternativos.
CacheDir
-
Define la ubicación de los ficheros almacenados.
FileListDir
-
Define la ubicación de los ficheros del listado de ficheros, si se usa posteriormente el valor
FileList.
Sección Default
La sección
Default
define los valores predeterminados, y los ajustes que controlan la operación del generador. Otras secciones pueden sobrescribir estos valores predeterminados con un valor de la sección.
Packages::Compress
-
Sets the default compression schemes to use for the package index files. It is a string that contains a space separated list of at least one of the compressors configured via the
APT::Compressor
configuration scope. The default for all compression schemes is '. gzip'.
Packages::Extensions
-
Define la lista predeterminada de extensiones de fichero que son ficheros de paquete. El valor predeterminado es «.deb».
Sources::Compress
-
Esta opción es similar a
Packages::Compress
excepto que controla la compresión para los ficheros «Sources».
Sources::Extensions
-
Define la lista predeterminada de las extensiones de fichero que son ficheros de fuentes. El valor predeterminado es «.dsc».
Contents::Compress
-
Esta opción es similar a
Packages::Compress
excepto que controla la compresión para los ficheros «Contents».
Translation::Compress
-
Esta opción es similar a
Packages::Compress
excepto que controla la compresión para el fichero maestro Translation-en.
DeLinkLimit
-
Define el número de kilobytes a desenlazar (y reemplazar con enlaces duros) por ejecución. Se usa junto al valor
External-Links
de cada sección.
FileMode
-
Define el modo de todos los ficheros de índice creados. El valor predeterminado es 0644. Todos los ficheros de índice se ajustan a este modo sin tener en cuenta la máscara de usuario («umask»).
LongDescription
-
Define si se incluyen descripciones largas en el fichero
Packages, o si se separan en un fichero
Translation-en
maestro.
Sección TreeDefault
Define los valores predeterminados de las secciones
Tree. Todas estas variables son variables de sustitución y reemplazan las cadenas $(DIST), $(SECTION) y $(ARCH) con sus valores respectivos.
MaxContentsChange
-
Define el número de kilobytes de los ficheros de contenido que se generan cada día. Los ficheros de contenido están en una cola «round-robin», de modo que durante varios días todos se regenerarán.
ContentsAge
-
Controla el número de días en los que se permite comprobar un fichero de contenido sin cambios. Si este límite caduca, el tiempo de modificación (mtime) del fichero de contenido se actualiza. Este caso puede aparecer si un fichero de paquete cambia de forma que no resulte en un fichero de contenido nuevo (por ejemplo, una edición alternativa). Se permite la retención con la esperanza de que se instalen nuevos «.deb», lo cual precisa un fichero nuevo de todos modos. El valor predeterminado es diez, las unidades usadas son días.
Directory
-
Define la raíz del directorio «.deb». El valor predeterminado es
$(DIST)/$(SECTION)/binary-$(ARCH)/
SrcDirectory
-
Define la raíz del directorio de los paquetes de fuentes. El valor predeterminado es
$(DIST)/$(SECTION)/source/
Packages
-
Define el fichero «Packages» de salida. El valor predeterminado es
$(DIST)/$(SECTION)/binary-$(ARCH)/Packages
Sources
-
Define el fichero «Sources» de salida. El valor predeterminado es
$(DIST)/$(SECTION)/source/Sources
Translation
-
Define el fichero maestro «Translation-en» que contiene las descripciones largas en el caso de que no se incluyan en el fichero «Packages». El valor predeterminado es
$(DIST)/$(SECTION)/i18n/Translation-en
InternalPrefix
-
Define el prefijo de la ruta que hace que un enlace simbólico se considere un enlace interno en lugar de un enlace externo. El valor predeterminado es
$(DIST)/$(SECTION)/
Contents
-
Define el fichero «Contents» de salida. El valor predeterminado es
$(DIST)/Contents-$(ARCH). Si este valor provoca que varios ficheros «Packages» se relacionen con un único fichero «Contents» (el comportamiento predeterminado),
apt-ftparchive
integrará automáticamente esos ficheros de paquete.
Contents::Header
-
Define el fichero de cabecera a añadir al fichero «Contents» de salida.
BinCacheDB
-
Define la base de datos binaria de la caché para usar en esta sección. Varias secciones pueden compartir la misma base de datos.
FileList
-
Define que
apt-ftparchive
debería leer la lista de ficheros del fichero proporcionado en lugar de explorar recursivamente el árbol de directorios. A los nombres de los ficheros relativos se les añade como prefijo el directorio del archivo.
SourceFileList
-
Define que
apt-ftparchive
debería leer la lista de ficheros del fichero proporcionado en lugar de explorar recursivamente el árbol de directorio. A los nombres de los ficheros relativos se les añade como prefijo el directorio del archivo. Sólo se usa cuando se procesan índices de fuentes.
Sección Tree
La sección
Tree
define un árbol de un archivo de paquetes Debian estándar que consiste en un directorio base, varias secciones en ese directorio base y finalmente varias arquitecturas en cada sección. La ruta exacta usada se define en la variable de sustitución
Directory.
La sección
Tree
toma un ámbito de una etiqueta que define la variable
$(DIST)
y la raíz del árbol (a la ruta se le añade el prefijo
ArchiveDir). Normalmente esto es un valor como
dists/bookworm.
Todos los valores definidos en la sección
TreeDefault
se pueden utilizar en la sección
Tree, así como tres nuevas variables.
Cuando se procesa una sección
Tree
apt-ftparchive
realiza una operación similar a la siguiente:
-
for i in Sections do
for j in Architectures do
Generar con DIST=scope SECTION=i ARCH=j
Sections
-
Es una lista de secciones separadas por espacios que aparecen bajo la distribución; habitualmente, es similar a
main contrib non-free non-free-firmware.
Architectures
-
This is a space separated list of all the architectures that appear under search section. The special architecture 'source' is used to indicate that this tree has a source archive. The architecture 'all' signals that architecture specific files like
Packages
should not include information about architecture
all
packages in all files as they will be available in a dedicated file.
LongDescription
-
Define si se incluyen descripciones largas en el fichero
Packages, o si se separan en un fichero
Translation-en
maestro.
BinOverride
-
Define el fichero binario alternativo. Éste contiene la información sobre la sección, la prioridad y la dirección del mantenedor.
SrcOverride
-
Define el fichero de fuentes alternativo. Éste contiene la información sobre la sección.
ExtraOverride
-
Define el fichero binario alternativo adicional.
SrcExtraOverride
-
Define el fichero de fuentes alternativo adicional.
Sección BinDirectory
La sección
bindirectory
define un directorio binario sin ningún tipo de estructura especial. El ámbito de la etiqueta define la ubicación del directorio binario, la configuración es similar a la sección
Tree
sin sustituir las variables o la configuración de
SectionArchitecture.
Packages
-
Define el fichero «Packages» de salida.
Sources
-
Define el fichero «Sources» de salida. Es necesario al menos un fichero
Packages
o
Sources.
Contents
-
Define el fichero «Contents» de salida (opcional)
BinOverride
-
Define el fichero binario alternativo.
SrcOverride
-
Define el fichero de fuentes alternativo.
ExtraOverride
-
Define el fichero binario alternativo adicional.
SrcExtraOverride
-
Define el fichero de fuentes alternativo adicional.
BinCacheDB
-
Define la base de datos de la caché.
PathPrefix
-
Añade una ruta a todas las rutas de salida.
FileList, SourceFileList
-
Define el fichero de la lista de ficheros.
EL FICHERO BINARIO ALTERNATIVO
El fichero binario alternativo es totalmente compatible con
dpkg-scanpackages(1). Contiene cuatro campos separados por espacios. El primero es el nombre del paquete, el segundo la prioridad asignada el paquete, el tercero es la sección a la que se fuerza el paquete y el último es el campo de permutación del mantenedor.
La forma general del campo del mantenedor es:
-
antigua [// antigua-n]* => nueva
o simplemente
-
nueva
La primera forma permite una lista separada por barras dobles de las direcciones de correo electrónico antiguas a definir. Si se encuentra cualquier de ellas «nueva» se sustituye por el campo del mantenedor. La segunda forma sustituye de forma incondicional el campo del mantenedor.
EL FICHERO DE FUENTES ALTERNATIVO
El fichero de fuentes alternativo es totalmente compatible con
dpkg-scansources(1). Contiene dos campos separados por espacios. El primero es el nombre del paquete fuente, el segundo es la sección a la que se asignará.
EL FICHERO ALTERNATIVO ADICIONAL
El fichero alternativo adicional permite añadir o reemplazar en la salida cualquier etiqueta arbitraria. Tiene tres columnas, la primera es el paquete, la segunda es la etiqueta y el resto de la línea es el nuevo valor.
OPCIONES
Todas las opciones de la línea de órdenes se pueden definir mediante el fichero de configuración, las descripciones indican la opción de la configuración a definir. Para opciones de tipo «boolean» puede invalidar el fichero de configuración utilizando algo como
-f-,--no-f,
-f=no
u otras muchas variaciones.
--md5, --sha1, --sha256, --sha512
-
Genera la suma de control dada. Por omisión, estas opciones están activas. Si se desactivan, los ficheros de índice generados no contendrán los campos de suma de control donde sea posibl. Opciones de configuración:
APT::FTPArchive::Checksum
y
APT::FTPArchive::Index::Checksum
donde
Index
puede ser
Packages,
Sources
o
Release, y
Checksum
puede ser
MD5,
SHA1,
SHA256
o
SHA512.
-d, --db
-
Utiliza una base de datos binaria para la caché. Ésto no afecta a la orden «generate». Opción de configuración:
APT::FTPArchive::DB.
-q, --quiet
-
Silencioso, produce una salida adecuada para su almacenamiento, omitiendo los indicadores de progreso. Más letras «q» producen una salida más silenciosa, hasta un máximo de dos letras. Además, es posible usar
-q=#
para ajustar el nivel de silencio, ignorando el fichero de configuración. Opción de configuración:
quiet.
--delink
-
Realiza el desenlazado. Esta opción activa el desenlazado de los ficheros si se usa la opción
External-Links. Esta activa de forma predeterminada y se puede desactivar mediante
--no-delink. Opción de configuración:
APT::FTPArchive::DeLinkAct.
--contents
-
Realiza la generación de «contents». Cuando se usa esta opción y los índices de los paquetes se están generando con una base de datos de la caché, el listado de los ficheros se extraerá también y se almacenará en la base de datos para su uso posterior. Cuando se usa la orden «generate» esta opción también permite la creación de cualquier fichero «Contents». Esta activa de forma predeterminada. Opción de configuración:
APT::FTPArchive::Contents.
-s, --source-override
-
Selecciona el fichero de fuentes alternativo a usar con la orden
sources. Opción de configuración:
APT::FTPArchive::SourceOverride.
--readonly
-
Define los permisos de las bases de datos de la caché como sólo lectura. Opción de configuración:
APT::FTPArchive::ReadOnlyDB.
-a, --arch
-
Hace que las órdenes
packages
y
contents
sólo acepten aquellos paquetes que coinciden con
*_arch.deb
o
*_all.deb, en lugar de todos los ficheros de paquete en la ruta dada. Elemento de configuración:
APT::FTPArchive::Architecture.
APT::FTPArchive::AlwaysStat
-
apt-ftparchive(1)
almacena tantos metadatos como sea posible en una base de datos de almacenamiento. Si los paquetes se recompilan o publican otra vez con la misma versión aparecerán problemas ya que se usarán los metadatos almacenados y ahora obsoletos tales como el tamaño o la suma de control. Esta situación se evitará si se activa esta opción ya que se comprobará si el fichero ha cambiado. Tenga en cuenta que esta opción está definida como «false» por omisión, ya que no se recomienda subir varias versiones o compilaciones de un paquete con el mismo número de versión, así que en teoría nadie debería tener problemas y por ello todas estas comprobaciones adicionales son innecesarias.
APT::FTPArchive::LongDescription
-
De forma predeterminada esta opción de configuración se define como «true» y sólo se debería definir como «false» si el archivo de paquetes generado con
apt-ftparchive(1)
también proporciona ficheros
Translation. Tenga en cuenta que el fichero maestro
Translation-en
sólo se puede crear con la orden «generate».
-h, --help
-
Muestra un mensaje corto sobre el uso.
-v, --version
-
Muestra la versión del programa.
-c, --config-file
-
Fichero de configuración: Especifica el fichero de configuración a usar. El programa leerá el fichero de configuración predeterminado y, después, este fichero de configuración. Si necesita que ciertas opciones de configuración se definan antes que el análisis de los de los ficheros de configuración predeterminados, defina un fichero con la variable de entorno
APT_CONFIG. Consulte
apt.conf(5)
para información sobre la sintaxis.
-o, --option
-
Define una opción de configuración: Esto definirá una opción arbitraria de configuración. La sintaxis es
-o Algo::Cosa=cosa.
-o
y
--option
se pueden usar varias veces para definir diferentes opciones.
EJEMPLOS
Para crear un fichero «Packages» comprimido para un directorio que contenga paquetes binarios («.deb»):
-
apt-ftparchive packages directorio | gzip > Packages.gz
VÉASE TAMBIÉN
apt.conf(5)
DIAGNÓSTICOS
apt-ftparchive
devuelve cero si no hay ningún error, y el valor 100 en caso de error.
BUGS
m[blue]Página de errores de APTm[][1]. Si quiere informar de un error en APT, consulte
/usr/share/doc/debian/bug-reporting.txt
o use la orden
reportbug(1).
TRADUCCIÓN
La traducción al español la realizaron Ismael Fanlo, Carlos Mestre, Rudy Godoy, Gustavo Saldumbide, Javier Fernández-Sanguino y Rubén Porras Campo entre los años 2003 y 2004. La traducción fue actualizada por Francisco Javier Cuadrado y Omar Campagne Polaino entre los años 2009 y 2012 .
Tenga en cuenta que este documento puede contener secciones sin traducir. Esto es intencionado para evitar perder contenido cuando la traducción no está actualizada con respecto al documento original.
AUTORES
Jason Gunthorpe
-
Equipo de APT
-
NOTAS
- 1.
-
Página de errores de APT
-
http://bugs.debian.org/src:apt
Index
- NOMBRE
-
- SINOPSIS
-
- DESCRIPCIÓN
-
- LA CONFIGURACIÓN DE «GENERATE»
-
- Sección Dir
-
- Sección Default
-
- Sección TreeDefault
-
- Sección Tree
-
- Sección BinDirectory
-
- EL FICHERO BINARIO ALTERNATIVO
-
- EL FICHERO DE FUENTES ALTERNATIVO
-
- EL FICHERO ALTERNATIVO ADICIONAL
-
- OPCIONES
-
- EJEMPLOS
-
- VÉASE TAMBIÉN
-
- DIAGNÓSTICOS
-
- BUGS
-
- TRADUCCIÓN
-
- AUTORES
-
- NOTAS
-
This document was created by
man2html,
using the manual pages.
Time: 04:55:13 GMT, May 18, 2024