Provided by:
apt_0.8.16~exp12ubuntu10_i386 
NAME
apt_preferences - Fichero de preferencias de APT
DESCRIPCI'oN
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
instalacion.
Puede disponer de varias versiones de un mismo paquete cuando el
fichero sources.list(5) contiene referencias a mas de una distribucion
(por ejemplo, <<stable>> (estable) y <<testing>> (en pruebas)). APT
asigna una prioridad a cada version disponible, y limitado por las
dependencias, apt-get selecciona la version con mayor prioridad. El
fichero de preferencias de APT modifica las prioridades asignadas por
APT, dando control al usuario sobre que version se seleccionara para su
instalacion.
Puede que esten disponibles varios ejemplares de la misma version de un
paquete cuando el fichero <<sources.list(5)>> contenga referencias a
mas de una fuente. En este caso apt-get descarga el ejemplar que
aparezca listado primero en el fichero <<sources.list(5)>>. El fichero
de preferencias de APT no modifica la eleccion del ejemplar, solo la
eleccion de la version.
Las preferencias (<<preferences>>) son un gran poder en las manos de un
administrador de sistemas, ipero tambien se pueden convertir en su
mayor pesadilla si se usan sin cuidado! APT no se cuestionara si las
preferencias contienen opciones erroneas, y por ello puede llevar a
paquetes no instalables o tomar decisiones erroneas al actualizar
paquetes. Pueden surgir mas problemas si se mezclan varias
publicaciones de distribucion sin un correcto entendimiento de los
siguientes parrafos. Los paquetes incluidos en una distribucion
especifica no se revisan en combinacion con otras distribuciones mas
antiguas o mas recientes, y puede que no funcionen como esperado. Queda
avisado.
Note that the files in the /etc/apt/preferences.d directory are parsed
in alphanumeric ascending order and need to obey the following naming
convention: The files have either no or "pref" as filename extension
and only contain alphanumeric, hyphen (-), underscore (_) and period
(.) characters. Otherwise APT will print a notice that it has ignored a
file if the file doesn't match a pattern in the
Dir::Ignore-Files-Silently configuration list - in this case it will be
silently ignored.
'cC'omo asigna APT las prioridades?
De no existir el fichero de preferencias, o si no hay ninguna entrada
en este que se pueda aplicar a una determinada version, se asigna a la
version la prioridad de la distribucion a la que pertenece. Es posible
seleccionar una distribucion, la >>distribucion objetivo<< (n. t. del
ingles target release), que recibe una prioridad predefinida mayor que
el resto. La distribucion objetivo se puede definir en la linea de
ordenes al ejecutar apt-get o en el fichero de configuracion 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 especificos. Por ejemplo,
apt-get install -t testing paquete
APT::Default-Release "stable";
Si se ha especificado una distribucion objetivo, APT usa el siguiente
algoritmo para establecer las prioridades de cada version de un
paquete. Asignar:
priority 1
to the versions coming from archives which in their Release files
are marked as "NotAutomatic: yes" but not as "ButAutomaticUpgrades:
yes" like the debian experimental archive.
prioridad 100
to the version that is already installed (if any) and to the
versions coming from archives which in their Release files are
marked as "NotAutomatic: yes" and "ButAutomaticUpgrades: yes" like
the debian backports archive since squeeze-backports.
prioridad 500
a las versiones que ni estan instaladas ni pertenecen a la
distribucion objetivo.
prioridad 990
a las versiones que no estan instaladas y que pertenecen a la
distribucion objetivo.
If the target release has not been specified then APT simply assigns
priority 100 to all installed package versions and priority 500 to all
uninstalled package versions, except versions coming from archives
which in their Release files are marked as "NotAutomatic: yes" - these
versions get the priority 1 or priority 100 if it is additionally
marked as "ButAutomaticUpgrades: yes".
APT aplica las siguientes normas, expuestas por orden de precedencia,
para determinar que version del paquete debe instalar.
o Nunca instala una version anterior de un paquete en lugar de la
instalada a menos que la prioridad de la version disponible supere
1000 (<<Desactualizar>> significa instalar una version menos
reciente de un paquete. Tenga en cuenta que ninguna de las
prioridades que asigna APT por omision superan 1000; estas
prioridades solo se pueden establecer mediante el fichero de
preferencias. Observe que instalar una version anterior del paquete
puede ser peligroso).
o Instala la version de mayor prioridad.
o Si dos o mas versiones tienen la misma prioridad, instala la mas
reciente (esto es, la que tiene un numero de version mayor).
o Si dos o mas versiones tienen la misma prioridad y numero de
version, pero o bien difieren en su meta-informacion o se ha
introducido la opcion --reinstall, se instalara la que no esta
instalada.
Generalmente, la version instalada del paquete (prioridad 100) no es
tan reciente como la disponible a traves de las fuentes en
<<sources.list(5)>> (prioridad 500 o 990). En este caso, el paquete se
actualizara al ejecutar apt-get install paquete o apt-get upgrade.
Rara vez la version instalada de un paquete es m'as reciente que
cualquiera de las versiones disponibles. En este caso no se instalara
la version anterior del paquete al ejecutar apt-get install paquete o
apt-get upgrade.
A veces, la version instalada de un paquete es mas reciente que la
version perteneciente a la distribucion objetivo, pero no tan reciente
como la version de otra distribucion. Este tipo de paquetes se
actualizaran al ejecutar apt-get install paquete o apt-get upgrade
porque al menos uno de los ejemplares disponibles tiene una prioridad
mayor que la version instalada.
El efecto de las preferencias sobre APT
El fichero de preferencias de APT permite al administrador del sistema
controlar la asignacion de prioridades. El fichero consiste en uno o
mas registros de varias lineas separados entre si por espacios en
blanco. Los registros pueden tener una de estos dos formatos: el
especifico o el general.
o El formato <<especifico>> asigna una prioridad (<<Pin-Priority>>) a
un paquete concreto y afecta a una version especificada o rango de
versiones. Por ejemplo, el siguiente registro asigna una prioridad
alta a todas las versiones del paquete perl cuyo numero de version
empiece con <<5.8>>. Puede especificar varios paquetes separados
por espacios.
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
o El formato <<general>> asigna una prioridad a todas las versiones
de los paquetes en una distribucion (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 solo afecta a grupos de paquetes. Por ejemplo, el siguiente
registro asigna una prioridad alta a todas las versiones
disponibles desde un sitio local.
Package: *
Pin: origin ""
Pin-Priority: 999
Una nota de aviso: la palabra clave usada aqui es <<origin>>, el
cual se puede usar para coincidir con un nombre de sistema. El
siguiente registro asignara una prioridad alta a todas las
versiones disponibles desde el servidor identificado con el nombre
de sistema <<ftp.de.debian.org>>.
Package: *
Pin: origin "ftp.de.debian.org"
Pin-Priority: 999
No se debe confundir con el origen (<<Origin>>) de una distribucion
tal y como se especifica un fichero Release. Lo que sigue a la
etiqueta <<Origin:>> en un fichero Release no es la direccion 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 distribucion
que tenga como nombre de archivo de paquetes <<unstable>>
(inestable).
Package: *
Pin: release a=unstable
Pin-Priority: 50
El siguiente registro asigna una prioridad alta a todas las
versiones de los paquetes pertenecientes a cualquier distribucion
que tenga como nombre clave <<wheezy>>.
Package: *
Pin: release n=wheezy
Pin-Priority: 900
El siguiente registro asigna una prioridad alta a todas las
versiones de los paquetes pertenecientes a cualquier publicacion
que tenga como nombre de archivo de paquetes <<stable>> y como
numero de version <<3.0>>.
Package: *
Pin: release a=stable, v=3.0
Pin-Priority: 500
Regular expressions and glob() syntax
APT also supports pinning by glob() expressions and regular expressions
surrounded by /. For example, the following example assigns the
priority 500 to all packages from experimental where the name starts
with gnome (as a glob()-like expression) or contains the word kde (as a
POSIX extended regular expression surrounded by slashes).
Package: gnome* /kde/
Pin: release n=experimental
Pin-Priority: 500
The rule for those expressions is that they can occur anywhere where a
string can occur. Thus, the following pin assigns the priority 990 to
all packages from a release starting with karmic.
Package: *
Pin: release n=karmic*
Pin-Priority: 990
If a regular expression occurs in a Package field, the behavior is the
same as if this regular expression were replaced with a list of all
package names it matches. It is undecided whether this will change in
the future, thus you should always list wild-card pins first, so later
specific pins override it.
The pattern "*" in a Package field is not considered a glob()
expression in itself.
'cC'omo interpreta APT las prioridades?
Las prioridades (P) asignadas en el fichero de preferencias deben ser
numeros enteros positivos o negativos. Se interpretan (en general) del
siguiente modo:
P > 1000
La version se instala incluso si es una version anterior a la
instalada en el sistema.
990 < P <=1000
La version se instala aunque no venga de la distribucion objetivo,
a menos que la version instalada sea mas reciente.
500 < P <=990
La version se instala a menos que exista otro ejemplar disponible
perteneciente a la distribucion objetivo, o bien si la version
instalada es mas reciente.
100 < P <=500
La version se instala a menos que exista una version disponible
perteneciente a otra distribucion, o si la version instalada es mas
reciente.
0 < P <=100
La version solo se instala si no hay ninguna version del paquete
instalada.
P < 0
Evita la instalacion de la version.
Si cualquier registro con formato especifico coincide con una version
disponible de un paquete, el registro determina la prioridad de la
version del paquete. De no ser asi, y si cualquier numero de registros
con formato general coinciden con una version, el primero determina la
prioridad de la version del paquete.
Por ejemplo, suponga que el fichero de preferencias de APT contiene los
tres registros antes mencionados:
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
Package: *
Pin: origin ""
Pin-Priority: 999
Package: *
Pin: release unstable
Pin-Priority: 50
Por ello:
o La version mas reciente disponible del paquete perl se instalara
siempre que el numero de version empiece con <<5.8>>. De existir
cualquier version 5.8* disponible de perl, y si la version
instalada es 5.9*, se instalara la version 5.8*, desactualizando el
paquete.
o Cualquier otra version 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 distribucion
objetivo.
o Otras versiones que tengan un origen distinto al sistema local
listadas en <<sources.list(5)>> y que pertenezcan a la distribucion
unstable solo se instalaran si se seleccionan para su instalacion y
si no hay ninguna version del paquete ya instalado.
Determinar la versi'on del paquete y las propiedades de la distribuci'on
Los recursos listados en el fichero <<sources.list(5)>> deben
proporcionar los ficheros Packages y Release. Estos 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 lineas, uno por cada paquete
disponible en ese directorio. Solo dos lineas en cada registro son
relevantes a la hora de definir las prioridades de APT:
La linea Package:
indica el nombre del paquete.
La linea Version:
indica el numero de version del paquete.
El fichero Release se suele encontrar en el directorio
.../dists/nombre-dist, por ejemplo .../dists/stable/Release o
.../dists/squeeze/Release. El fichero consiste en registros de una sola
linea que se aplican a todos los paquetes por debajo del directorio
padre. Al contrario que el fichero Packages, casi todas las lineas del
fichero Release son relevantes para las prioridades de APT:
Las lineas Archive: o Suite:
indican el nombre del archivo al que pertenecen todos los paquetes
del arbol de directorios. Por ejemplo, la linea <<Archive: stable>>
o <<Suite: stable>> especifica que todos los paquetes en el arbol
de directorios por debajo del directorio raiz marcado en el fichero
Release estan en un archivo <<stable>> (estable). Para especificar
una preferencia de acuerdo con este parametro tendra que insertar
la siguiente linea en el fichero de preferencias de APT:
Pin: release a=stable
La linea Codename:
indica el nombre de la distribucion a la que pertenecen todos los
paquetes del arbol de directorios. Por ejemplo, la linea
<<Codename: wheezy>> especifica que todos los paquetes en el arbol
de directorios por debajo del directorio padre marcado en el
fichero Release pertenecen a la version llamada wheezy. Para
especificar una preferencia de acuerdo con este parametro tendra
que poner una de las siguientes lineas en el fichero de
preferencias de APT:
Pin: release n=wheezy
La linea Version:
nombra la version de la publicacion. Por ejemplo, los paquetes en
el arbol pueden pertenecer a la version 3.0 de Debian GNU/Linux.
Observe que, generalmente, testing y unstable no tienen una version
asignada porque no se han publicado. Para especificar una
preferencia de acuerdo con este parametro tendra que poner una de
las siguientes linea en el fichero de preferencias de APT:
Pin: release v=3.0
Pin: release a=stable, v=3.0
Pin: release 3.0
La linea Component:
indica la licencia asociada a los paquetes en el arbol de
directorios correspondiente al fichero Release. Por ejemplo, la
linea Component: main especifica que todos los paquetes en el arbol
de directorios pertenecen a la seccion 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
parametro tendra que poner la siguiente linea en el fichero de
preferencias de APT:
Pin: release c=main
La linea Origin:
indica la procedencia de los paquetes en el arbol de directorios
del fichero Release. La fuente mas comun es Debian. Puede definir
esta fuente en el fichero de preferencias de APT mediante la
siguiente linea:
Pin: release o=Debian
La linea Label:
nombra la etiqueta de los paquetes en los arboles de directorios
del fichero Release. Generalmente, es Debian. Puede definir esta
etiqueta en el fichero de preferencias de APT mediante la siguiente
linea:
Pin: release l=Debian
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 seccion contrib de la distribucion
<<unstable>> (inestable).
L'ineas opcionales en el registro de preferencias de APT
Cada registro en el fichero de preferencias de APT puede comenzar con
una o mas lineas que tengan como primera palabra Explanation:. Util
para comentarios.
EJEMPLOS
Seguir la distribuci'on <<stable>> (estable)
El siguiente fichero de preferencias de APT provoca que APT asigne una
prioridad mayor de la que asigna por omision (500) a todas las
versiones de paquete de la distribucion stable y una prioridad mas baja
al resto de versiones de paquetes de otras distribuciones Debian.
Explanation: Desinstalar o no instalar los ejemplares que no
Explanation: pertenecen a la distribucion estable
Package: *
Pin: release a=stable
Pin-Priority: 900
Package: *
Pin: release o=Debian
Pin-Priority: -10
Con un fichero <<sources.list(5)>> adecuado y el fichero de
preferencias mostrado anteriormente, cualquiera de las siguientes
ordenes de APT hace que o bien todo el sistema o bien solo algunos
paquetes se actualicen a la ultima version en stable.
apt-get install paquete
apt-get upgrade
apt-get dist-upgrade
La siguiente orden hace que APT actualice un paquete a la ultima
version de la distribucion testing, el paquete no se actualizara de
nuevo a menos que se ejecute la orden otra vez.
apt-get install paquete/testing
Seguir la distribuci'on <<testing>> (en pruebas) o <<unstable>> (inestable)
El siguiente fichero de preferencias de APT provocara que APT asigne
mayor prioridad a las versiones de la distribucion testing, una
prioridad menor a los paquetes de la distribucion 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
Con un fichero sources.list(5) adecuado y el fichero de preferencias
anterior cualquiera de las siguientes ordenes hara que APT actualice
los paquetes a la ultima version de la distribucion testing.
apt-get install paquete
apt-get upgrade
apt-get dist-upgrade
La siguiente orden hace que APT actualice un determinado paquete a la
ultima version de la distribucion unstable. Mas tarde, apt-get upgrade
actualizara el paquete a la ultima version de la distribucion testing
si es mas reciente que la version instalada. De otro modo, se instalara
la version mas reciente de la distribucionunstable si es mas reciente
que la version instalada.
apt-get install paquete/unstable
Seguir la evoluci'on de una publicaci'on por el nombre
El siguiente fichero de preferencias de APT provocara que APT asigne
una prioridad superior a la predeterminada (500) a todas las versiones
de paquetes pertenecientes a un nombre de distribucion 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 seguira
la migracion de una publicacion desde el archivo testing a stable y por
ultimo oldstable. Si desea seguir, por ejemplo, el progreso en testing
obviando el nombre de la publicacion, deberia usar los ejemplos de
configuracion mencionados anteriormente.
Explanation: Eliminar o no instalar cualquier paquete de Debian cuya version sea
Explanation: distinta a aquellos en las distribuciones de nombre squeeze o sid
Package: *
Pin: release n=wheezy
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
Con un fichero <<sources.list(5)>> adecuado y el fichero de
preferencias mostrado anteriormente, cualquiera de las siguientes
ordenes provocara que APT actualice los paquetes a la ultima version de
la distribucion llamada wheezy.
apt-get install paquete
apt-get upgrade
apt-get dist-upgrade
La siguiente orden hace que APT actualice un determinado paquete a la
ultima version de la distribucion sid. Mas tarde, apt-get upgrade
actualizara el paquete a la ultima version de la distribucionwheezy si
es mas reciente que la version instalada. De otro modo, se instalara la
version mas reciente de la distribucion sid si es mas reciente que la
version instalada.
apt-get install paquete/sid
FICHEROS
/etc/apt/preferences
Ficheros de preferencias de version. Aqui puede especificar el
anclaje ("pinning"), una preferencia para conseguir ciertos
paquetes a partir de una fuente diferente o de una version
diferente de una distribucion. Opcion de configuracion:
Dir::Etc::Preferences.
/etc/apt/preferences.d/
Fragmentos de fichero para las preferencias de la version. Opcion
de configuracion: Dir::Etc::PreferencesParts.
V'eASE TAMBI'eN
apt-get(8) apt-cache(8) apt.conf(5) sources.list(5)
BUGS
P'agina 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'ON
La traduccion al espanol la realizaron Ismael Fanlo, Carlos Mestre,
Rudy Godoy, Gustavo Saldumbide, Javier Fernandez-Sanguino y Ruben
Porras Campo entre los anos 2003 y 2004. La traduccion fue actualizada
por Francisco Javier Cuadrado y Omar Campagne Polaino entre los anos
2009 y 2010.
Tenga en cuenta que este documento puede contener secciones sin
traducir. Esto es intencionado para evitar perder contenido cuando la
traduccion no esta actualizada con respecto al documento original.
AUTHOR
Equipo de APT
NOTES
1. Pagina de errores de APT
http://bugs.debian.org/src:apt