APT.CONF(5)

NOMBRE
apt.conf - Fichero de configuración de APT

DESCRIPCIÓN

/etc/apt/apt.conf es el fichero de configuración principal, compartido por todas las herramientas del conjunto APT, aunque no es la única ubicación donde se pueden definir opciones. El conjunto de herramientas también comparte el mismo analizador de línea de órdenes para ofrecer un entorno homogéneo.

Cuando se inicia una herramienta de APT, leerá los ficheros de configuración en el siguiente orden:

    1. El fichero definido por la variable de entorno APT_CONFIG (de existir).

    2. Todos los ficheros en Dir::Etc::Parts en orden alfanumérico ascendente cuya extensión de fichero no es «conf» y que solo contenga caracteres alfanuméricos, guión (-), guión bajo (_) y punto (.). De no ser así, APT informa de que ha ignorado un fichero si este no coincide con el patrón en la lista de configuración Dir::Ignore-Files-Silently. Si coincide, se ignora de forma silenciosa.

    3. El fichero de configuración principal definido por Dir::Etc::main.

    4. Las opciones de línea de órdenes se aplican para anular directivas de configuración o para cargar más ficheros de configuración.

SINTAXIS

El fichero de configuración está organizado en forma de árbol con las opciones organizadas en grupos funcionales. Las opciones se proporcionan con dos puntos dobles; por ejemplo APT::Get::Assume-Yes es una opción de la herramienta Get, dentro del conjunto de herramientas de APT. Las opciones no se heredan de sus grupos paternos.

Sintácticamente, el modelo del lenguaje de configuración es similar a las herramientas de ISC como pueden ser «bind» y «dhcp». Las líneas que comienzan con // se tratan como comentarios (se ignoran), así como todo el texto que haya entre /* y */, igual que en los comentarios de C/C++. Cada línea tiene la forma APT::Get::Assume-Yes "true";. Es necesario utilizar comillas y un punto y coma final. El valor debe estar en una única línea y no se permite concatenar cadenas. No se pueden incluir barras inversas «\» o comillas adicionales. Un nombre de opción se compone de caracteres alfanuméricos y los caracteres «/-:._+». Un nuevo ámbito se puede abrir con llaves, como:

    APT {
      Get {
        Assume-Yes "true";
        Fix-Broken "true";
      };
    };

con nuevas líneas ubicadas para hacerlo más legible. Las listas pueden crearse abriendo un nuevo ámbito e incluyendo una única cadena acotada entre comillas seguida de un punto y coma. Se pueden incluir varias entradas separadas por punto y coma.

    DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};

En general, el fichero de configuración de ejemplo /usr/share/doc/apt/examples/apt.conf /usr/share/doc/apt/examples/configure-index.gz es una buena guía para entender su aspecto.

El uso de las mayúsculas no afecta a los nombres de opciones de configuración, y por ello, en el ejemplo anterior, puede utilizar dpkg::pre-install-pkgs.

Los nombres de las opciones de configuración son opcionales si se define una lista como muestra el ejemplo anterior de DPkg::Pre-Install-Pkgs. Si no se define un nombre, simplemente se añade una nueva opción a la lista. Si se define un nombre, se puede redefinir la opción como cualquier otra opción reasignando un nuevo valor a la opción.

Se definen dos órdenes especiales, #include (ya obsoleto y no es compatible en implementaciones alternativas) y #clear. #include incluirá el fichero proporcionado, a menos que el final del nombre del fichero acabe en una barra, en cuyo caso se incluye el directorio entero. #clear se usa para borrar parte del árbol de configuración. El elemento especificado y sus descendientes se eliminarán. (Tenga en cuenta que estas líneas también deben acabar con punto y coma).

La orden #clear ofrece la única forma de eliminar una lista o un ámbito completo. Reabrir un ámbito (o utilizar la sintaxis de adición de :: que se describe a continuación) no redefinirá las entradas escritas anteriormente. Sólo se pueden redefinir las opciones asignándolas un nuevo valor; las listas y los ámbitos no se pueden redefinir, sólo eliminar.

Todas las herramientas de APT aceptan la opción «-o» que permite definir una directriz arbitraria de configuración que se define en la línea de órdenes. La sintaxis es un nombre de opción completo (por ejemplo, APT::Get::Assume-Yes) seguido por signos de igualdad y el nuevo valor de la opción. Para añadir un nuevo elemento a lista, añada :: al final del nombre de la lista. (Como puede imaginar, no puede usar la sintaxis de ámbitos en la línea de órdenes).

Tenga en cuenta que añadir elementos a la lista mediante :: solo funciona para un elemento por línea, y no se debe utilizar con la sintaxis de ámbitos (que añade :: de forma implícita). Utilizar las dos sintaxis combinadas provocaría un fallo del que lamentablemente dependen algunos usuarios: una opción con el nombre no habitual «::» que actúa como cualquier otra opción con un nombre. Esto presenta varios problemas; por ejemplo, los usuarios que escriban varias líneas con esta sintaxis errónea esperando que se añada a una lista obtendrían lo contrario, ya que solo se utilizaría la última asignación para la opción «::». Las versiones futuras de APT mostrarán los fallos y detendrán el funcionamiento si encuentran algún uso inadecuado, y por ello debe corregir tales declaraciones ahora que APT no muestra fallos de forma explícita.

EL GRUPO APT

Este grupo de opciones controla el comportamiento general de APT así como mantiene las opciones para todas las herramientas.

Architecture
    La arquitectura del sistema, define la arquitectura a usar al obtener los ficheros y analizar las listas de paquetes. El valor predeterminado es la arquitectura para la que apt se compiló.

Architectures
    Todas las arquitecturas que el sistema permite. Por ejemplo, los procesadores que incorporan el conjunto de instrucciones amd64 (también llamado x86-64) permiten ejecutar binarios compilados para el conjunto de instrucciones i386 (x86). Esta lista se utiliza al obtener paquetes y analizar las listas de paquetes. El valor predeterminado es la arquitectura nativa del sistema (APT::Architecture), y las arquitecturas externas se añaden al registro mediante dpkg --add-architecture.

Default-Release
    La versión predeterminada de la que se instalarán los paquetes, si hay más de una versión disponible. Contiene el nombre de la versión, ya sea el nombre en código o el número de la versión. Por ejemplo: «stable», «testing», «unstable», «wheezy», «jessie», «4.0», «5.0*». Consulte también apt_preferences(5).

Ignore-Hold
    Ignora paquetes retenidos. Esta opción global provoca que el solucionador de problemas ignore los paquetes retenidos en la toma de decisiones.

Clean-Installed
    Activo de forma predeterminada. Cuando se activa la función «autoclean», ésta eliminará cualquier paquete del almacén que ya no se pueda descargar. Si se desactiva, entonces los paquetes que están localmente instalados son excluidos de la limpieza - tenga en cuenta que APT no proporciona ningún mecanismo directo para reinstalarlos.

Immediate-Configure
    Activo de forma predeterminada, lo que provoca que APT instale paquetes esenciales e importantes en la siguiente acción de instalación/actualización para así limitar el efecto de un fallo de invocación a dpkg(1). Si se desactiva esta opción, APT trata un paquete importante de la misma forma que un paquete extra: entre el desempaquetado del paquete A y su configuración se pueden dar otros desempaquetados o invocaciones de configuración para otros paquete no relacionados, como B, C, etc. Si esto último provoca un fallo en la invocación a dpkg(1) (por ejemplo, porque los scripts de desarrollador del paquete B provocan un error), el resultado es un estado del sistema en el que el paquete A está desempaquetado pero no configurado, lo que puede afectar al correcto funcionamiento de los paquetes dependientes del paquete A, ya que no se satisface la dependencia sobre éste.

    El marcador de configuración inmediata también se aplica en los casos problemáticos de dependencias circulares, ya que una dependencia con el marcador de configuración inmediata equivale a una predependencia. En teoría, esto permite que APT reconozca un caso en el que no puede realizar una configuración inmediata, interrumpa la operación, y sugiera al usuario la desactivación temporal de la opción para poder completar la operación. Tenga en cuenta el uso de la palabra «teoría»; el uso real ha provocado este problema muy pocas veces, en versiones de publicaciones no estables, y provocado por las dependencias erróneas de un paquete específico o en un sistema con un estado previo de dependencias rotas. No desactive esta opción sin reflexionar antes, ya que evita otros problemas además del caso descrito anteriormente.

    Antes de ejecutar una operación profunda como dist-upgrade con esta opción desactivada, debería intentar ejecutar install para el paquete que APT es incapaz de configurar inmediatamente; cerciórese de informar de su problema a su distribución y al equipo de APT mediante el enlace de informe de fallo al final del documento, para que así pueden mejorar y corregir el proceso de actualización.

Force-LoopBreak
    Nunca active esta opción a menos que realmente sepa lo que hace. Permite a APT eliminar un paquete esencial de forma temporal para interrumpir un bucle «Conflicto/Conflicto» o «Conflicto/Predepende» entre dos paquetes esenciales. Un buble así no debería existir y es un fallo serio. Esta opción funciona si los paquetes esenciales no son tar, gzip, libc, dpkg, dash o cualquier cosa sobre la que estos paquetes dependen.

Cache-Start, Cache-Grow, Cache-Limit
    A partir de la versión 0.7.26, APT utiliza un fichero de caché mapeado en memoria para almacenar la información de paquetes disponibles. Cache-Start actúa como una indicación del tamaño máximo de la caché, y por ello es la cantidad de memoria que APT solicita al iniciarse. El valor predeterminado es 20971520 bytes (aprox. 20 MB). Tenga en cuanta que esta cantidad de espacio debe estar disponible para APT; de lo contrario, fallará posiblemente, y por ello se debe reducir este valor para dispositivos con restricciones de memoria, mientras que se debe aumentar para sistemas con varias fuentes configuradas. Cache-Grow define en bytes con un valor predeterminado de 1048576 (aprox. 1 MB) cuánto puede aumentar como máximo el tamaño de la caché si no basta con el espacio definido con Cache-Start. Este valor se aplica repetidas veces hasta que la caché puede almacenar toda la información, o el tamaño de la caché alcance el valor definido con Cache-Limit. El valor predeterminado de Cache-Limit es cero, sin límite. Si se define Cache-Grow con un valor de cero, se desactiva el crecimiento automático de la caché.

Build-Essential
    Define los paquetes que se consideran dependencias de construcción esenciales.

Get
    La subsección «Get» controla la herramienta apt-get(8); consulte la documentación para más información sobre esta opción.

Cache
    La subsección Cache controla la herramienta apt-cache(8); consulte la documentación para más información sobre esta opción.

CDROM
    La subsección CDROM controla la herramienta apt-cdrom(8); consulte la documentación para más información sobre esta opción.

EL GRUPO ACQUIRE

El grupo de opciones Acquire controla la descarga de paquetes y los distintos métodos de obtención responsable de la descarga en sí mismo (consulte también sources.list(5)).

Check-Valid-Until
    Opción relacionada con la seguridad, cuyo valor predeterminado es «true», ya que una validación con fecha de vencimiento para un fichero «Release» evita ataques replay de larga duración y puede, por ejemplo, ayudar a identificar las réplicas no actualizadas, aunque esta función depende de la corrección de la hora del sistema del usuario. Se recomienda a los responsables de archivos que creen ficheros «Release» con la cabecera Valid-Until, pero si no se hace o se desea un valor más estricto, se puede utilizar la opción Max-ValidTime a continuación.

Max-ValidTime
    El periodo (en segundos) a partir de la creación del fichero «Release» (indicado en la cabecera Date) durante el cual se considerará válida. Si el fichero «Release» incluye una cabecera Valid-Until, la fecha más temprana se utilizará como la fecha de vencimiento. El valor predefinido es 0, esto es, sin límite de tiempo. Las opciones de configuración específicas al archivo se pueden realizar añadiendo la etiqueta del archivo al nombre de opción.

Min-ValidTime
    El tiempo mínimo en segundos a partir de la creación del fichero Release (indicado en la cabecera Date) durante los cuales se considerará válido .Utilícelo si necesita utilizar una réplica (local) raramente actualizada que es copia de un archivo actualizado regularmente con una cabecera calida Valid-Until en lugar de desactivar la comprobación de la fecha de vencimiento. Las opciones de configuración específicas del archivo se pueden y deben utilizar añadiendo la etiqueta del archivo al nombre de opción.

PDiffs
    Intenta descargar deltas llamados PDiffs para los índices (como ficheros Packages) en lugar de descargarlos enteros. Su valor predeterminado es «true».

    Se ofrecen dos opciones secundarias para limitar el uso de «PDiffs»: FileLimit permite definir el número máximo de ficheros «PDiff» que se descargarán para actualizar un fichero. Por otra parte, SizeLimit es el porcentaje máximo del tamaño de todos los parches en comparación con el tamaño del fichero de destino. Si se supera uno de estos límites, se descargará el fichero completo en lugar de los parches.

Queue-Mode
    Modo de cola, Queue-Mode puede ser host o access, que determina cómo paralelizará APT las conexiones salientes. host significa que se abrirá una conexión por máquina de destino, access significa que se abrirá una conexión por cada tipo de URI.

Retries
    El número de reintentos a realizar. Si es distinto de cero APT volverá a intentar obtener los ficheros fallidos el número de veces proporcionado.

Source-Symlinks
    Utiliza enlaces simbólicos para los archivos fuente. Si es «true» los archivos fuente se enlazarán cuando sea posible, en vez de copiarse. Es «true» de forma predeterminada.

http
    http::Proxy define el proxy predeterminado que utilizar para direcciones HTTP URI. Utiliza el formato estándar http://[[usuario][:contraseña]@]máquina[:puerto]/. También se puede especificar un proxy por cada máquina usando la forma http::Proxy::<máquina> con la palabra especial DIRECT que significa que no se use ningún proxy. La variable de entorno http_proxy se usará en caso de no definir ninguna de las opciones anteriores.

    Se proporcionan tres opciones de configuración para el control de la caché con proxy cachés conformes a HTTP/1.1. No-Cache indica al proxy que nunca utilice la respuesta cacheada. Max-Age define la máxima antigüedad permitida (en segundos) de un fichero de índice en la caché de un proxy. No-Store define que el proxy no debe almacenar ficheros del archivo en su caché, que se puede utilizar para impedir que el proxy contamine la caché con ficheros «.deb» (de gran tamaño).

    La opción timeout define el tiempo máximo de espera utilizado por el método; este valor se aplica al establecimiento de conexión y a la recepción de datos.

    La opción Acquire::http::Pipeline-Depth se puede utilizar para activar HTTP pipelining (RFC 2616 sección 8.1.2.2), que puede facilitar, por ejemplo, las conexiones de latencia alta. También define el número de solicitudes que se envían en cada pipeline. El valor predeterminado para esta opción con versiones anteriores de APT era 10, pero ahora el valor predeterminado es cero (= desactivado) para evitar problemas con la siempre creciente cantidad de servidores web y proxies que escogen no cumplir la especificación HTTP/1.1.

    Acquire::http::AllowRedirect controla si APT respeta una redirección; activado por omisión.

    El ancho de banda usado se puede limitar mediante Acquire::http::Dl-Limit, que acepta valores enteros en kilobytes. El valor predeterminado es cero, que desactiva el límite e intenta utilizar todo el ancho de banda disponible (tenga en cuenta que esta opción desactiva implícitamente la descarga simultánea desde varios servidores).

    Acquire::http::User-Agent se puede usar para definir un «User-Agent» distinto para la descarga http ya que algunos proxys sólo permiten el acceso para clientes que usan un identificador conocido.

https
    Las opciones Cache-control, Timeout, AllowRedirect, Dl-Limit y proxy funcionan con direcciones HTTPS URI de la misma forma que con el método http, y utiliza los mismos valores predeterminados si no se define. Aún no se permite la opción Pipeline-Depth.

    La subopción CaInfo define la ubicación del fichero que guarda la información sobre certificados de confianza. <host>::CaInfo es la opción correspondiente para cada servidor. La subopción booleana Verify-Peer define si se debe comprobar el certificado del servidor con certificados de confianza. <host>::Verify-Peer es la opción correspondiente para cada servidor. La subopción booleana Verify-Host define si se debe comprobar el «hostname» del servidor. <host>::Verify-Host es la opción correspondiente para cada servidor. SslCert define el certificado que utilizar para la autenticación del cliente. <host>::SslCert es la opción correspondiente para cada servidor. SslKey define la clave privada que utilizar para la autenticación del cliente. <host>::SslKey es la opción correspondiente para cada servidor. SslForceVersion sustituye la versión predeterminada de SSL que utilizar. Se admiten las cadenas «TLSv1» o «SSLv3». <host>::SslForceVersion es la opción correspondiente para cada servidor.

ftp
    ftp::Proxy define el proxy predeterminado que utilizar para los URI de FTP. Utiliza el formato estándar ftp://[[usuario][:contraseña]@]máquina[:puerto]/. También se puede especificar un proxy por cada máquina usando la forma ftp::Proxy::<máquina> con la palabra especial DIRECT, que significa que no se use ningún proxy. La variable de entorno ftp_proxy se usará en caso de no definir ninguna de las opciones anteriores. Para usar un proxy FTP debe configurar el script ftp::ProxyLogin en el fichero de configuración. Esta entrada define las órdenes a enviar para decirle al servidor del proxy a qué conectarse. Consulte /usr/share/doc/apt/examples/configure-index.gz para un ejemplo de uso. Las variables de sustitución que representan el componente URI son $(PROXY_USER) $(PROXY_PASS) $(SITE_USER) $(SITE_PASS) $(SITE) y $(SITE_PORT).

    La opción timeout define el tiempo máximo de espera utilizado por el método; este valor se aplica al establecimiento de conexión y a la recepción de datos.

    Puede controlar el modo pasivo a través de varias opciones. Habitualmente, es seguro dejar activado el modo pasivo, y funciona en casi todos los entornos. Sin embargo algunas situaciones requieren desactivar el modo pasivo y usar el modo puerto de FTP en su lugar. Esto se puede hacer globalmente, para conexiones a través de un proxy o para una máquina en concreto (consulte el ejemplo de fichero de configuración para ver algunos ejemplos).

    Es posible usar un proxy FTP a través de HTTP definiendo la variable de entorno ftp_proxy con un HTTP URL. Para la sintaxis consulte la explicación anterior del método http. Esto no puede definir en el fichero de configuración y no se recomienda el uso de FTP por encima de HTTP debido a su poca eficiencia.

    La opción ForceExtended controla el uso de las órdenes de RFC 2428 EPSV y EPRT. De forma predeterminada es «false», que significa que sólo se usa si el control de conexión es IPv6. Cambiándolo a «true» fuerza su uso incluso en conexiones IPv4. Tenga en cuenta que la mayoría de los servidores de FTP no son compatibles con la RFC 2428.

cdrom
    Para los URI que utilizan el método cdrom, la única opción configurable es el punto de montaje, cdrom::Mount, que debe ser el punto de montaje del dispositivo de CD-ROM (o DVD u otro) tal y como se define en /etc/fstab. Se pueden proporcionar órdenes «mount» y «unmount» alternativas si el punto de montaje no se puede definir en el fichero «fstab». La sintaxis consiste en insertar

        /cdrom/::Mount "algo";

    dentro del bloque cdrom. Es importante dejar una barra al final. Puede especificar órdenes para desmontar mediante UMount.

gpgv
    Para direcciones GPGV URI, la única opción configurable es gpgv::Options, que introduce parámetros adicionales a gpgv.

CompressionTypes
    Lista de los tipos de compresión que se pueden usar en los métodos de «acquire». Los ficheros como Packages pueden estar disponibles en varios formatos de compresión. De forma predeterminada los métodos de «acquire» pueden descomprimir los ficheros comprimidos en bzip2, lzma y gzip, y con esta opción se pueden añadir más formatos en el momento, o cambiar el método usado. La sintaxis para esto es:

        Acquire::CompressionTypes::extensión-del-fichero "nombre-del-método";

    El subgrupo Order también se puede usar para definir en qué orden el sistema de «acquire» intentará descargar los ficheros comprimidos. El sistema de «acquire» intentará el primero y, en caso de error, procederá con el siguiente tipo de compresión de la lista, por lo que si prefiere un tipo antes que otro sólo tiene que añadirlo a la lista el primero (los tipos predeterminados que no se han añadido lo hacen de forma implícita al final de la lista; por ejemplo,

        Acquire::CompressionTypes::Order:: "gz";

    se puede usar cuando se prefieran los ficheros comprimidos con gzip antes que con bzip2 y lzma. Si se prefiere lzma antes que gzip y bzip2, la opción de configuración debería parecerse a esto

        Acquire::CompressionTypes::Order { "lzma"; "gz"; };

    No es necesario añadir bz2 a la lista de forma explícita ya que se añadirá de forma automática.

    Tenga en cuenta que Dir::Bin::método se comprueba en tiempo de ejecución. Si se define esta opción, el método se usará solo si este fichero existe; por ejemplo, la opción para el método bzip2 (integrado) es:

        Dir::Bin::bzip2 "/bin/bzip2";

    . Tenga en cuenta que las entradas para la lista definidas en la línea de órdenes se añadirán al final de la lista definida en los ficheros de configuración, pero antes que las entradas predefinidas. Si prefiere un tipo sobre otro definido en los ficheros de configuración, defina la opción directamente, no en estilo de lista. Esto no omite la lista definida, simplemente prefija la lista con este tipo.

    El tipo especial uncompressed se puede utilizar para establecer una preferencia por los ficheros descomprimidos, pero tenga en cuenta que la mayoría de archivos no proporcionan ficheros descomprimidos, así que habitualmente esto solo sirve con réplicas locales.

GzipIndexes
    Al descargar ficheros de índice comprimidos con gzip, («Packages», «Sources», o «Translations»), los mantiene comprimidos localmente en lugar de desempaquetarlos. Esto ahorra mucho espacio en disco a costa de mayores requerimientos del procesador al generar los almacenes de paquetes locales. El valor predeterminado es «false».

Languages
    La subsección «Languages» controla qué ficheros Translation se descargan y en qué orden APT intentará mostrar las traducciones de la descripción. APT intentará mostrar la primera descripción en el idioma que esté primero en la lista. Los idiomas se pueden especificar con sus códigos de idioma cortos o largos. Tenga en cuenta que no todos los archivos de paquetes proporcionan ficheros Translation para cada idioma (especialmente para los códigos de idioma largos).

    La lista predeterminada incluye «environment» y «en». «environment» tiene aquí un significado especial: se sustituye en tiempo de ejecución con los códigos de idioma extraídos de la variable de entorno LC_MESSAGES. También comprueba que estos códigos no se incluyen por duplicado. Si se define LC_MESSAGES como «C», solo se utiliza el fichero Translation-en (si está disponible). Para obligar a que APT no utilice ningún fichero «Translation» utilice la configuración Acquire::Languages=none. «none» es otro código con significado especial que detiene la búsqueda de un fichero Translation adecuado. Indica a APT que también descargue estas traducciones, sin utilizarlas amenos que el entorno defina el idioma. Por ello, el siguiente ejemplo de configuración en el orden «en, de» para una configuración local en inglés, o «de, en» para una en alemán. Tenga en cuenta que se descarga «fr», pero no se utiliza a menos que se utilice APT bajo una configuración local en francés (donde el orden sería «fr, de, en»).

        Acquire::Languages { "environment"; "de"; "en"; "none"; "fr"; }

    Nota: para impedir problemas derivados de ejecutar APT en distintos entornos (por ejemplo, por distintos usuarios u otros programas), todos los ficheros «Translation» que se encuentran en /var/lib/apt/lists/ se añaden al final de la lista (después de un «none» implícito).

DIRECTORIOS

La sección Dir::State contiene directorios que afectan a la información de estado local. lists es el directorio en el que se almacenan las listas de los paquetes descargados y status es el nombre del fichero de estado de dpkg(1). preferences es el nombre del fichero preferences (preferencias) de APT. Dir::State contiene el directorio que se usará como prefijo predeterminado en todos los elementos subordinados en caso de que no empiecen con / ó ./.

Dir::Cache contiene las ubicaciones que afectan a la información de la caché local, como los dos cachés de paquetes srcpkgcache y pkgcache, así como a la ubicación dónde se guardan los ficheros descargados, Dir::Cache::archives. La generación de cachés se puede desactivar dejando sus nombres como una cadena vacía. Ésto hará que el arranque sea más lento, pero ahorrará espacio. Habitualmente, es preferible deshabilitar pkgcache en lugar de srcpkgcache. Al igual que con Dir::State el directorio predeterminado está en Dir::Cache

Dir::Etc contiene la ubicación de los ficheros de configuración, sourcelist proporciona la ubicación de sourcelist y main es el fichero de configuración predeterminado (esta opción de configuración no tiene ningún efecto a menos que se realice desde el fichero de configuración definido en APT_CONFIG).

La opción Dir::Parts lee en todos los fragmentos de ficheros de configuración en orden léxico desde el directorio especificado. Al finalizar este proceso carga el fichero de configuración principal.

Dir::Bin apunta a los programas binarios. Dir::Bin::Methods define la ubicación de los gestores de los métodos y gzip, bzip2, lzma, dpkg, apt-get, dpkg-source, dpkg-buildpackage y apt-cache especifican la ubicación de sus respectivos programas.

La opción de configuración RootDir tiene un significado especial. Si se define, todas las rutas de Dir:: serán relativas a RootDir, incluso las rutas que se especifiquen de forma absoluta. De modo que, por ejemplo, si RootDir se define como /tmp/staging y Dir::State::status se define como /var/lib/dpkg/status, entonces el fichero de estado será /tmp/staging/var/lib/dpkg/status.

La lista Ignore-Files-Silently se puede usar para definir qué fichero debería ignorar APT silenciosamente al analizar ficheros en los directorios de fragmentos. Por omisión, se ignora silenciosamente un fichero que termina con .disabled, ~, .bak o .dpkg-[a-z]+. Como se puede ver con el último valor predeterminado, estos patrones pueden usar la sintaxis de expresiones regulares.

APT CON DSELECT

Varias directivas de configuración controlan el comportamiento predeterminado cuando APT se usa como método de dselect(1). Éstas se encuentran en la sección DSelect.

Clean
    Modo de limpieza del almacén de paquetes. Este valor puede ser always, prompt, auto, pre-auto y never. always y prompt eliminan todos los paquetes del almacén después de una actualización, aunque prompt (predeterminado) solicita una confirmación. auto solo elimina los paquetes que ya no se pueden descargar (por ejemplo, sustituidos por una versión más reciente). pre-auto realiza esta acción antes de descargar paquetes nuevos.

options
    Los contenidos de esta variable se introducen a apt-get(8) como opciones de la línea de ordenes al ejecutar la fase de instalación.

Updateoptions
    Los contenidos de esta variable se introducen a apt-get(8) como opciones de la línea de ordenes al ejecutar la fase de actualización.

PromptAfterUpdate
    Si es «true», la operación de «[U]pdate» (actualización) en dselect(1) preguntará siempre antes de continuar. De forma predeterminada, sólo preguntará en caso de error.

INVOCACIÓN DE APT A DPKG

Varias directivas de configuración controlan cómo invoca APT a dpkg(1). Éstas se encuentran en la sección DPkg.

options
    Es una lista de opciones que se introducen a dpkg(1). Las opciones se deben especificar usando la notación de lista, y cada elemento de la lista se introduce a dpkg(1) como un sólo argumento.

Pre-Invoke, Post-Invoke
    Es una lista de órdenes de la consola que se ejecutarán antes y/o después de invocar a dpkg(1). Como options, se debe especificar con notación de lista. Las órdenes se ejecutarán en orden usando /bin/sh; en caso de fallo, APT cancela la acción.

Pre-Install-Pkgs
    Es una lista de órdenes de la consola que se ejecutarán antes de invocar a dpkg(1). Como options, se debe especificar con notación de lista. Las órdenes se ejecutan en orden usando /bin/sh, y APT finalizará en caso de fallo. APT introducirá a las órdenes los nombres de fichero de todos los «.deb» que va a instalar, uno por línea a través de la entrada estándar.

    La versión 2 de este protocolo vuelca más información, incluyendo la versión del protocolo, el espacio de configuración de APT y de los paquetes, los ficheros y las versiones que cambian. La versión 2 se habilita definiendo DPkg::Tools::Options::cmd::Version con el valor 2. cmd es una orden que se pasa a Pre-Install-Pkgs.

Run-Directory
    APT cambia a este directorio antes de invocar a dpkg(1), el valor predeterminado es /.

Build-options
    Estas opciones se introducen a dpkg-buildpackage(1) cuando compila paquetes; el comportamiento predeterminado se limita a deshabilitar el firmado de paquetes y a producir todos los binarios.

  Uso del disparador de dpkg (y de las opciones relacionadas)

APT puede invocar dpkg(1) de forma que pueda hacer un uso agresivo de los disparadores («triggers») mediante varias invocaciones a dpkg(1). Sin no se definen más opciones, dpkg(1) utilizará los disparadores una durante su ejecución. Si se activan estas opciones, se puede reducir el tiempo necesario para realizar la instalación o la actualización. Tenga en cuenta que está diseñado para que estas opciones se activen de forma predeterminada en un futuro, pero debido a los cambios drásticos en la manera en que APT invoca a dpkg(1), necesita más pruebas. Actualmente, estas opciones son experimentales, y no se deberían usar en entornos de producción. También provoca un fallo en el informe de progreso, con lo que todas las interfaces muestran un progreso del 100% durante la mitad del tiempo (o más) durante la configuración de todos los paquetes.

Tenga en cuenta que no se garantiza que APT permitirá usar estas opciones o que estas opciones no causen un (gran) problema en el futuro. Si ha entendido los riesgos y los problemas actuales con estas opciones pero es lo suficientemente valiente para ayudar a probarlas, cree un nuevo fichero de configuración y pruebe una combinación de las opciones. Por favor, informe de cualquier error, problema o mejora que encuentre y asegúrese de apuntar en sus informes qué opciones ha usado. Pedir ayuda a dpkg(1) también puede ser útil por motivos de depuración, véase por ejemplo: dpkg --audit. Una combinación de opciones defensivas sería

    DPkg::NoTriggers "true";
    PackageManager::Configure "smart";
    DPkg::ConfigurePending "true";
    DPkg::TriggersPending "true";

DPkg::NoTriggers
    Añade a todas las invocaciones a dpkg(1) la opción sin disparadores («no triggers»), excepto a la invocación a «ConfigurePending». Consulte dpkg(1) si está interesado en saber qué significa esto. De forma breve: dpkg(1) no ejecuta los disparadores cuando está opción está presente a menos que se ejecute explícitamente con una invocación adicional. Tenga en cuenta que esta opción también existe en versiones antiguas de APT (aunque sin documentar) con un significado diferente. Anteriormente sólo se añadía la opción «--no-triggers» a las invocaciones de la configuración para dpkg(1), ahora APT también añade esta opción a las invocaciones de desempaquetado y eliminación.

PackageManager::Configure
    Los valores válidos son «all», «smart» y «no». El valor predeterminado es «all», que hace que APT configure todos los paquetes. El valor «smart» sólo configura los paquetes que requieren ser configurados antes de que se desempaquete otro paquete (predependencia) y permite que dpkg(1) configure los restantes con una invocación generada por la opción «ConfigurePending» (más abajo). El valor «no» no configura nada y depende por completo de dpkg(1) para la configuración (que fallará si se encuentra una pre-dependencia). Si se define esta opción con un valor distinto a «all» activa implícitamente la siguiente opción de forma predeterminada, ya que de otro modo el sistema podría terminar en un estado mal configurado qué podría derivar en la imposibilidad de arrancar el sistema.

DPkg::ConfigurePending
    Si define esta opción, APT ejecutará dpkg --configure --pending para permitir a dpkg manejar todas las configuraciones necesarias y todos los disparadores. Esta opción se activa automáticamente de forma predeterminada si la opción anterior no está definida como all, pero desactivarla podría ser útil si se quiere ejecutar APT varias veces seguidas, por ejemplo: en un instalador. En estas situaciones podría desactivar esta opción en todas las ejecuciones menos la última.

DPkg::TriggersPending
    Útil para una configuración smart en la que un paquete que tiene disparadores pendientes no se considera como instalado y que dpkg lo trata como desempaquetado, lo cual entra en conflicto con el sistema de pre-dependencias (véase debbugs #526774). Tenga en cuenta que esto procesará todos los disparadores, no sólo los disparadores necesarios para configurar este paquete.

OrderList::Score::Immediate
    Los paquetes esenciales (y sus dependencias) se deberían configurar inmediatamente después de desempaquetarlos. Se recomienda realizarlo lo más pronto posible en el proceso de actualización ya que actualmente estas invocaciones de configuración también necesitan DPkg::TriggersPending, que ejecuta varios disparadores (que puede que no sean necesarios). Los esenciales tienen, de forma predeterminada, una puntuación alta pero la opción inmediata es relativamente baja (un paquete que tenga pre-dependencias tiene una puntuación más alta). Puede cambiar la puntuación mediante esta opción y las otras del mismo grupo. El siguiente ejemplo muestra la configuración con los valores predeterminados.

        OrderList::Score {
        	Delete 500;
        	Essential 200;
        	Immediate 10;
        	PreDepends 50;
        };

LAS OPCIONES «PERIODIC» Y «ARCHIVES»

Los grupos de opciones APT::Periodic y APT::Archives configuran el comportamiento de las actualizaciones periódicas de apt, que se hacen mediante el script /etc/cron.daily/apt. Consulte la cabecera de este script para una breve documentación de estas opciones.

OPCIONES DE DEPURACIÓN

Activar las opciones de la sección Debug:: provocará que la información de depuración se envíe a la salida estándar del programa que esté utilizando las bibliotecas de apt, o activar los modos especiales del programa que son útiles para depurar el comportamiento de apt. La mayoría de estas opciones no son interesantes para un usuario normal, aunque unas cuantas sí son:

    • Debug::pkgProblemResolver activa la salida de las decisiones tomadas por dist-upgrade, upgrade, install, remove, purge.

    • Debug::NoLocking desactiva todos los cerrojos de los ficheros. Esto se puede usar para ejecutar algunas operaciones (por ejemplo, apt-get -s install) como un usuario normal.

    • Debug::pkgDPkgPM muestra la línea de órdenes actual cada vez que apt invoca a dpkg(1).

    • Debug::IdentCdrom desactiva la inclusión de los datos de statfs en los identificadores de los discos ópticos.

A continuación, se muestra la lista completa de las opciones de depuración de apt.

Debug::Acquire::cdrom
    Muestra la información relacionada al acceso de las fuentes de cdrom://

Debug::Acquire::ftp
    Muestra la información relacionada con la descarga de paquetes mediante FTP.

Debug::Acquire::http
    Muestra la información relacionada con la descarga de paquetes mediante HTTP.

Debug::Acquire::https
    Muestra la información relacionada con la descarga de paquetes mediante HTTPS.

Debug::Acquire::gpgv
    Muestra la información relacionada con la comprobación de las firmas criptográficas mediante gpg.

Debug::aptcdrom
    Muestra la información sobre el proceso de acceso a las colecciones de paquetes almacenadas en CD-ROM.

Debug::BuildDeps
    Describe el proceso de resolución de dependencias de compilación en apt-get(8).

Debug::Hashes
    Muestra los «hashes» criptográficos que generan las bibliotecas de apt.

Debug::IdentCDROM
    No incluye la información de statfs, el número de bloques libres y usados del sistema de ficheros del CD-ROM, cuando se genera un identificador de un CD-ROM.

Debug::NoLocking
    Desactiva todos los cerrojos de los ficheros. Por ejemplo, esto permitirá ejecutar dos instancias de “apt-get update” a la vez.

Debug::pkgAcquire
    Registra los elementos que se añaden o se borran de la cola de descarga global.

Debug::pkgAcquire::Auth
    Muestra los mensajes de estado y los errores relacionados con la comprobación de las sumas de verificación y las firmas criptográficas de los ficheros descargados.

Debug::pkgAcquire::Diffs
    Muestra la información de la descarga y la aplicación de los diffs de la lista de índices de paquetes, y los errores relacionados con éstos.

Debug::pkgAcquire::RRed
    Muestra la información relacionada con el parcheado de las listas de paquetes de apt cuando se descargan los diffs de los índices en lugar de los índices completos.

Debug::pkgAcquire::Worker
    Registra todas las interacciones de los sub-procesos que están realizando descargas.

Debug::pkgAutoRemove
    Registra los eventos relacionados con el estado «instalado automáticamente» de los paquetes y con la eliminación de los paquetes sin usar.

Debug::pkgDepCache::AutoInstall
    Genera los mensajes de depuración que describen qué paquetes se están instalando automáticamente para resolver las dependencias. Esto corresponde al paso inicial de instalación automática, por ejemplo: apt-get install y no el solucionador completo de dependencias de apt. Consulte Debug::pkgProblemResolver.

Debug::pkgDepCache::Marker
    Genera los mensajes de depuración que describen qué paquete se marcará como mantener/instalar/borrar mientras el solucionador de problemas («ProblemResolver») realiza su trabajo. Cada adición o borrado puede iniciar acciones adicionales; éstas se muestran sangradas con dos espacios bajo la entrada original. El formato de cada línea es MarkKeep, MarkDelete o MarkInstall seguido de package-name <a.b.c -> d.e.f | x.y.z> (sección) siendo a.b.c la versión actual del paquete, d.e.f la versión considerada para instalar y x.y.z una versión nueva, pero no considerada para la instalación (por una puntuación baja). Las dos últimas se pueden omitir si no hay o si es la misma versión que la instalada. sección es el nombre de la sección en la que aparece el paquete.

Debug::pkgDPkgPM
    Cuando se invoca a dpkg(1) muestra la línea de órdenes exacta con la que se invocó, con los argumentos separados por un espacio.

Debug::pkgDPkgProgressReporting
    Muestra todos los datos recibidos de dpkg(1) en el descriptor del fichero de estado y cualquier error encontrado durante el análisis.

Debug::pkgOrderList
    Genera una traza del algoritmo que decide el orden en el que apt debería entregar los paquetes a dpkg(1).

Debug::pkgPackageManager
    Muestra los mensajes de estado siguiendo los pasos realizados al invocar a dpkg(1).

Debug::pkgPolicy
    Muestra la prioridad de cada lista de paquetes al iniciarse.

Debug::pkgProblemResolver
    Muestra la ejecución del solucionador de dependencias (esto se aplica sólo a lo que ocurre cuando se encuentra un problema de dependencias complejo).

Debug::pkgProblemResolver::ShowScores
    Muestra una lista de todos los paquetes instalados con sus puntuaciones calculadas y usadas por pkgProblemResolver. La descripción del paquete es la misma que la descrita en Debug::pkgDepCache::Marker.

Debug::sourceList
    Muestra la información de los proveedores extraída de /etc/apt/vendors.list.

EJEMPLOS

/usr/share/doc/apt/examples/configure-index.gz es un fichero de configuración de ejemplo que muestra valores de ejemplo para todas las opciones posibles.

FICHEROS

/etc/apt/apt.conf
    Fichero de configuración de APT. Opción de configuración: Dir::Etc::Main.

/etc/apt/apt.conf.d/
    Fragmentos del fichero de configuración de APT. Opción de configuración: Dir::Etc::Parts.

VÉASE TAMBIÉN

apt-cache(8), apt-config(8), apt_preferences(5).

BUGS

Página de errores de APT[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

Daniel Burrows <dburrows@debian.org>
    Documentación inicial de Debug::*.

NOTAS

1.  Página de errores de APT
    http://bugs.debian.org/src:apt