table of contents
APT_PREFERENCES(5) | APT | APT_PREFERENCES(5) |
NOMBRE¶
apt_preferences - Fichero de preferencias de APTDESCRIPCIÓN¶
El fichero de preferencias de APT /etc/apt/preferences y los segmentos de fichero dentro del directorio /etc/apt/preferences.d/ se pueden usar para controlar las versiones de los paquetes seleccionados para su instalación. Puede disponer de varias versiones de un mismo paquete cuando el fichero sources.list(5) contiene referencias a más de una distribución (por ejemplo, «stable» (estable) y «testing» (en pruebas)). APT asigna una prioridad a cada versión disponible, y limitado por las dependencias, apt-get selecciona la versión con mayor prioridad. Las preferencias de APT modifican las prioridades que APT asigna de forma predeterminada a las versiones de paquetes, dando control al usuario sobre qué versión se seleccionará para su instalación. Puede que estén disponibles varios ejemplares de la misma versión de un paquete cuando el fichero « sources.list(5)» contenga referencias a más de una fuente. En este caso apt-get descarga el ejemplar que aparezca listado primero en el fichero « sources.list(5)». Las preferencias de APT no modifican la elección del ejemplar, sólo la elección de la versión. Las preferencias («preferences») son un gran poder en las manos de un administrador de sistemas, pero también se pueden convertir en su mayor pesadilla si se utilizan sin cuidado. APT no se cuestionará si las preferencias contienen opciones erróneas, lo que puede generar casos de paquetes no instalables o una toma de decisiones errónea al actualizar paquetes. Pueden surgir más problemas si se mezclan varias publicaciones de distribución sin un correcto entendimiento de los siguientes párrafos. Los paquetes incluidos en una distribución específica no se comprueban en combinación con otras distribuciones más antiguas o más recientes, y puede que no funcionen como se espera. Queda avisado. Tenga en cuenta que los ficheros bajo el directorio /etc/apt/preferences.d se analizan en orden ascendente alfanumérico, y sus nombres deben cumplir la siguiente convención: el fichero no tiene extensión, o tiene la extensión pref, y solo contiene caracteres alfanuméricos, guión (-), guión bajo (_) y punto (.). En caso contrario APT informa que ha omitido un fichero, a menos que este fichero coincida con un patrón en la lista de configuración Dir::Ignore-Files-Silently. Si coincide, el fichero se ignora silenciosamente.Asignación de prioridades predeterminadas de APT¶
De no existir el fichero de preferencias, o si no hay ninguna entrada en éste que se pueda aplicar a una determinada versión, se asigna a la versión la prioridad de la distribución a la que pertenece. Es posible seleccionar una distribución, la >>distribución objetivo<< (n. t. del inglés target release), que recibe una prioridad predefinida mayor que el resto. La distribución objetivo se puede definir en la línea de órdenes al ejecutar apt-get o en el fichero de configuración de APT /etc/apt/apt.conf. Tenga en cuenta que esto tiene preferencia sobre cualquier otra prioridad definida en /etc/apt/preferencias, pero que no afecta al anclaje de paquetes específicos. Por ejemplo,apt-get install -t testing paquete
APT::Default-Release "stable";
A las versiones provenientes de archivos con la
opción «NotAutomatic: yes» en su fichero Release, pero
no como «ButAutomaticUpgrades: yes», como el archivo
experimental de Debian.
prioridad 100
A la versión ya instalada (si existe) y a las
versiones provenientes de archivos con las opciones «NotAutomatic:
yes» y «ButAutomaticUpgrades: yes» en su fichero Release,
como el archivo Debian de paquetes adaptados a una versión anterior
(«backports») a partir de squeeze-backports.
prioridad 500
a las versiones que ni están instaladas ni
pertenecen a la distribución objetivo.
prioridad 990
a las versiones que no están instaladas y que
pertenecen a la distribución objetivo.
Si no se define la versión objetivo, APT asigna una prioridad 100 a la
versión de todos los paquetes instalados, y una prioridad 500 a todas
las versiones no instaladas de paquete, a excepción de las provenientes
de archivos con la opción «NotAutomatic: yes» en su
fichero Release. Estas versiones reciben la prioridad 1 o 100 si
también se define la opción «ButAutomaticUpgrades:
yes».
APT aplica las siguientes normas, expuestas por orden de precedencia, para
determinar qué versión del paquete debe instalar.
•Nunca instala una versión anterior de un
paquete en lugar de la instalada a menos que la prioridad de la versión
disponible supere 1000 («Desactualizar» significa instalar una
versión menos reciente de un paquete. Tenga en cuenta que ninguna de
las prioridades que asigna APT por omisión superan 1000; éstas
prioridades sólo se pueden establecer mediante el fichero de
preferencias. Observe que instalar una versión anterior del paquete
puede ser peligroso).
•Instala la versión de mayor
prioridad.
•Si dos o más versiones tienen la misma
prioridad, instala la más reciente (esto es, la que tiene un
número de versión mayor).
•Si dos o más versiones tienen la misma
prioridad y número de versión, pero o bien difieren en su
meta-información o se ha introducido la opción --reinstall, se
instalará la que no está instalada.
Generalmente, la versión instalada del paquete (prioridad 100) no es tan
reciente como la disponible a través de las fuentes en «
sources.list(5)» (prioridad 500 o 990). En este caso, el paquete
se actualizará al ejecutar apt-get install paquete
o apt-get upgrade.
Rara vez la versión instalada de un paquete es más reciente
que cualquiera de las versiones disponibles. En éste caso no se
instalará la versión anterior del paquete al ejecutar apt-get
install paquete o apt-get upgrade.
A veces, la versión instalada de un paquete es más reciente que la
versión perteneciente a la distribución objetivo, pero no tan
reciente como la versión de otra distribución. Este tipo de
paquetes se actualizarán al ejecutar apt-get install
paquete o apt-get upgrade porque al menos uno
de los ejemplares disponibles tiene una prioridad mayor que la versión
instalada.
El efecto de las preferencias sobre APT¶
El fichero de preferencias de APT permite al administrador del sistema controlar la asignación de prioridades. El fichero consiste en uno o más registros de varias líneas separados entre sí por espacios en blanco. Los registros pueden tener una de estos dos formatos: el específico o el general.•El formato «específico»
asigna una prioridad («Pin-Priority») a uno más paquetes
definidos con una versión o un rango de versiones especificados. Por
ejemplo, el siguiente registro asigna una prioridad alta a todas las versiones
del paquete perl cuyo número de versión empiece con
«5.10». Puede especificar varios paquetes separados por
espacios.
Package: perl Pin: version 5.10* Pin-Priority: 1001
•El formato habitual asigna una prioridad a todas
las versiones de los paquetes en una distribución (esto es, a todas las
versiones de paquetes listados en un fichero Release particular), o a todas
las versiones de un paquete provenientes de un sitio concreto en Internet,
identificado por su nombre de dominio.
Esta entrada con formato general en el fichero de preferencias de APT
sólo afecta a grupos de paquetes. Por ejemplo, el siguiente registro
asigna una prioridad alta a todas las versiones disponibles desde un sitio
local.
Una nota de aviso: la palabra clave usada aquí es «origin»,
el cual se puede usar para coincidir con un nombre de sistema. El siguiente
registro asignará una prioridad alta a todas las versiones disponibles
desde el servidor identificado con el nombre de sistema
«ftp.de.debian.org».
No se debe confundir con el origen («Origin») de una
distribución tal y como se especifica un fichero Release. Lo que sigue
a la etiqueta «Origin:» en un fichero Release no es la
dirección de un sitio de Internet, sino el autor o el nombre del
proveedor, tales como «Debian» o «Ximian».
El siguiente registro asigna una prioridad baja a todas las versiones de los
paquetes pertenecientes a cualquier distribución que tenga como nombre
de archivo de paquetes «unstable» (inestable).
El siguiente registro asigna una prioridad alta a todas las versiones de los
paquetes pertenecientes a cualquier distribución que tenga como nombre
clave «stretch».
El siguiente registro asigna una prioridad alta a todas las versiones de los
paquetes pertenecientes a cualquier publicación que tenga como nombre
de archivo de paquetes «stable» y como número de
versión «8».
Package: * Pin: origin "" Pin-Priority: 999
Package: * Pin: origin "ftp.de.debian.org" Pin-Priority: 999
Package: * Pin: release a=unstable Pin-Priority: 50
Package: * Pin: release n=stretch Pin-Priority: 900
Package: * Pin: release a=stable, v=8 Pin-Priority: 500
Expresiones regulares y sintaxis glob(7)¶
APT también permite el anclaje mediante expresiones glob(7), y expresiones regulares delimitadas con barras. Por ejemplo, la siguiente opción asigna una prioridad 500 a todos los paquetes del archivo experimental si el nombre comienza con «gnome» (como expresión de tipo glob(7)) o contiene la palabra «kde» (como expresión regular extendida POSIX delimitada por barras).Package: gnome* /kde/ Pin: release n=experimental Pin-Priority: 500
Package: * Pin: release n=trusty* Pin-Priority: 990
Interpretación de APT de las prioridades¶
Las prioridades (P) asignadas en el fichero de preferencias de APT deben ser números enteros positivos o negativos. Se interpretan (en general) del siguiente modo: P >= 1000La versión se instala incluso si es una
versión anterior a la instalada en el sistema.
990 <= P < 1000
La versión se instala aunque no venga de la
distribución objetivo, a menos que la versión instalada sea
más reciente.
500 <= P < 990
La versión se instala a menos que exista otro
ejemplar disponible perteneciente a la distribución objetivo, o bien si
la versión instalada es más reciente.
100 <= P < 500
La versión se instala a menos que exista una
versión disponible perteneciente a otra distribución, o si la
versión instalada es más reciente.
0 < P < 100
La versión sólo se instala si no hay
ninguna versión del paquete instalada.
P < 0
Evita la instalación de la versión.
Si cualquier registro con formato específico coincide con una
versión disponible de un paquete, el registro determina la prioridad de
la versión del paquete. De no ser así, y si cualquier
número de registros con formato general coinciden con una
versión, el primero determina la prioridad de la versión del
paquete.
Por ejemplo, suponga que el fichero de preferencias de APT contiene los tres
registros antes mencionados:
Package: perl Pin: version 5.10* Pin-Priority: 1001 Package: * Pin: origin "" Pin-Priority: 999 Package: * Pin: release unstable Pin-Priority: 50
•La versión más reciente disponible
del paquete perl se instalará siempre que el número de
versión empiece con «5.10». De existir cualquier
versión 5.10* disponible de perl, y si la versión instalada es
5.14*, se instalará una versión anterior de perl.
•Cualquier otra versión de un paquete
distinto de perl disponible desde el sistema local tiene prioridad sobre el
resto de las versiones, incluso sobre los pertenecientes a la
distribución objetivo.
•Otras versiones que tengan un origen distinto al
sistema local listadas en « sources.list(5)» y que
pertenezcan a la distribución unstable sólo se instalarán
si se seleccionan para su instalación y si no hay ninguna
versión del paquete ya instalado.
Determinar la versión del paquete y las propiedades de la distribución¶
Los recursos listados en el fichero « sources.list(5)» deben proporcionar los ficheros Packages y Release. Éstos describen los paquetes disponibles en cada uno de los sitios. El fichero Packages se suele encontrar en el directorio .../dists/ nombre-dist/ componente/arquitectura, por ejemplo, .../dists/stable/main/binary-i386/Packages. Este fichero consiste en una serie de registros de varias líneas, uno por cada paquete disponible en ese directorio. Sólo dos líneas en cada registro son relevantes a la hora de definir las prioridades de APT: La línea Package:indica el nombre del paquete.
La línea Version:
indica el número de versión del
paquete.
El fichero Release se suele encontrar en el directorio .../dists/
nombre-dist, por ejemplo .../dists/stable/Release o
.../dists/jessie/Release. El fichero consiste en registros de una sola
línea que se aplican a todos los paquetes por debajo del
directorio padre. Al contrario que el fichero Packages, casi todas las
líneas del fichero Release son relevantes para las prioridades de APT:
Las líneas Archive: o Suite:
indican el nombre del archivo al que pertenecen todos los
paquetes del árbol de directorios. Por ejemplo, la línea
«Archive: stable» o «Suite: stable» especifica que
todos los paquetes en el árbol de directorios por debajo del directorio
raíz marcado en el fichero Release están en un archivo
«stable» (estable). Para especificar una preferencia de acuerdo
con este parámetro tendrá que insertar la siguiente línea
en el fichero de preferencias de APT:
La línea Codename:
Pin: release a=stable
indica el nombre de la distribución a la que
pertenecen todos los paquetes del árbol de directorios. Por ejemplo, la
línea «Codename: stretch» especifica que todos los
paquetes en el árbol de directorios por debajo del directorio padre
marcado en el fichero Release pertenecen a la versión llamada stretch.
Para especificar una preferencia de acuerdo con este parámetro
tendrá que poner una de las siguientes líneas en el fichero de
preferencias de APT:
La línea Version:
Pin: release n=stretch
nombra la versión de la publicación. Por
ejemplo, los paquetes en el árbol pueden pertenecer a la versión
8 de Debian. Observe que, generalmente, testing y unstable no tienen una
versión asignada porque no se han publicado. Para especificar una
preferencia de acuerdo con este parámetro tendrá que poner una
de las siguientes línea en el fichero de preferencias de APT:
La línea Component:
Pin: release v=8 Pin: release a=stable, v=8 Pin: release 8
indica la licencia asociada a los paquetes en el
árbol de directorios correspondiente al fichero Release. Por ejemplo,
la línea Component: main especifica que todos los paquetes en el
árbol de directorios pertenecen a la sección main, lo cual
asegura que su licencia se ajusta a las Directrices sobre software libre de
Debian (DFSG). Para especificar una preferencia de acuerdo con este
parámetro tendrá que poner la siguiente línea en el
fichero de preferencias de APT:
La línea Origin:
Pin: release c=main
indica la procedencia de los paquetes en el árbol
de directorios del fichero Release. La fuente más común es
Debian. Puede definir esta fuente en el fichero de preferencias de APT
mediante la siguiente línea:
La línea Label:
Pin: release o=Debian
nombra la etiqueta de los paquetes en los árboles
de directorios del fichero Release. Generalmente, es Debian. Puede definir
esta etiqueta en el fichero de preferencias de APT mediante la siguiente
línea:
Todos los ficheros Packages y Release obtenidos de los recursos en «
sources.list(5)» se guardan en el directorio /var/lib/apt/lists,
o en el directorio definido por la variable Dir::State::Lists, que se puede
definir en el fichero apt.conf. Por ejemplo, el fichero
debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release contiene
los ficheros Release obtenidos de debian.lcs.mit.edu para la arquitectura
binary-i386 de la sección contrib de la distribución
«unstable» (inestable).
Pin: release l=Debian
Líneas opcionales en el registro de preferencias de APT¶
Cada registro en el fichero de preferencias de APT puede comenzar con una o más líneas que tengan como primera palabra Explanation:. Útil para comentarios.EJEMPLOS¶
Seguir la distribución «stable» (estable)¶
El siguiente fichero de preferencias de APT provoca que APT asigne una prioridad mayor de la que asigna por omisión (500) a todas las versiones de paquete de la distribución stable y una prioridad más baja al resto de versiones de paquetes de otras distribuciones Debian.Explanation: Desinstalar o no instalar los ejemplares que no Explanation: pertenecen a la distribución estable Package: * Pin: release a=stable Pin-Priority: 900 Package: * Pin: release o=Debian Pin-Priority: -10
apt-get install paquete apt-get upgrade apt-get dist-upgrade
apt-get install paquete/testing
Seguir la distribución «testing» (en pruebas) o «unstable» (inestable)¶
El siguiente fichero de preferencias de APT provocará que APT asigne mayor prioridad a las versiones de la distribución testing, una prioridad menor a los paquetes de la distribución unstable, y una prioridad prohibitiva a los paquetes de otras distribuciones de Debian.Package: * Pin: release a=testing Pin-Priority: 900 Package: * Pin: release a=unstable Pin-Priority: 800 Package: * Pin: release o=Debian Pin-Priority: -10
apt-get install paquete apt-get upgrade apt-get dist-upgrade
apt-get install paquete/unstable
Seguir la evolución de una publicación por el nombre¶
El siguiente fichero de preferencias de APT provocará que APT asigne una prioridad superior a la predeterminada (500) a todas las versiones de paquetes pertenecientes a un nombre de distribución especificado, y una prioridad prohibitivamente baja a las versiones de paquetes pertenecientes a otras distribuciones de Debian, nombres clave y archivos Debian. Tenga en cuenta que con esta preferencia, APT seguirá la migración de una publicación desde el archivo testing a stable y por último oldstable. Si desea seguir, por ejemplo, el progreso en testing obviando el nombre de la publicación, debería usar los ejemplos de configuración mencionados anteriormente.Explanation: Eliminar o no instalar cualquier paquete de Debian cuya versión sea Explanation: distinta a aquellos en las distribuciones de nombre squeeze o sid Package: * Pin: release n=stretch Pin-Priority: 900 Explanation: El nombre clave de Debian «unstable» siempre es sid Package: * Pin: release n=sid Pin-Priority: 800 Package: * Pin: release o=Debian Pin-Priority: -10
apt-get install paquete apt-get upgrade apt-get dist-upgrade
apt-get install paquete/sid
FICHEROS¶
/etc/apt/preferencesFicheros de preferencias de versión. Aquí
puede especificar el anclaje ("pinning"), una preferencia para
conseguir ciertos paquetes a partir de una fuente diferente o de una
versión diferente de una distribución. Opción de
configuración: Dir::Etc::Preferences.
/etc/apt/preferences.d/
Fragmentos de fichero para las preferencias de la
versión. Opción de configuración:
Dir::Etc::PreferencesParts.
VÉASE TAMBIÉN¶
apt-get(8)apt-cache(8)apt.conf(5)sources.list(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.AUTOR¶
Equipo de APTNOTAS¶
- 1.
- Página de errores de APT
09 Junio 2012 | APT 1.0.9.8.4 |