DESCRIPCIN
El fichero de preferencias de APT /etc/apt/preferences se puede usar
para controlar las versiones de los paquetes seleccionados.
Cuando el fichero sources.list(5) contiene referencias a ms de una dis-
tribucin (por ejemplo, estable y pruebas). APT asigna una prioridad a
cada versin disponible. Limitado por las dependencias, apt-get selec-
ciona la versin con mayor prioridad.
El fichero de preferencias de APT modifica las prioridades asignadas
por APT, dando control al usuario sobre que ejemplar se seleccionar
para la instalacin.
Puede estn disponibles varios ejemplares de la misma versin de un
paquete cuando el fichero sources.list(5) contenga referencias a ms de
una fuente. En este caso apt-get descarga el ejemplar que aparezca lis-
tado primero en el fichero sources.list(5). El fichero de preferencias
de APT no modifica la eleccin del ejemplar, slo la eleccin de la
versin.
CMO ASIGNA APT LAS PRIORIDADES?
Si no existe el fichero de preferencias o no hay ninguna entrada en ste
que se pueda aplicar a una determinada versin, se asigna a la versin la
prioridad de la distribucin a la que pertenece. Es posible seleccionar
una distribucin, >>distribucin objetivo<< (n. t. del ingls target
release), que recibe una prioridad mayor que el resto. La distribucin
objetivo se puede definir en la lnea de rdenes al ejecutar apt-get o en
el fichero de configuracin de APT (/etc/apt/apt.conf). Por ejemplo,
apt-get install -t testing paquete
APT::Default-Release "stable";
Si se ha especificado una distribucin objetivo, APT usa el siguiente
algoritmo para establecer las prioridades de cada versin de un paquete.
Asigna:
prioridad 100
a la versin instalada (si existe).
prioridad 500
a la versin que ni est instalada ni pertenece a la distribucin
objetivo.
prioridad 990
a las versiones que no estn instaladas pero que pertenecen a la
distribucin objetivo.
Si no se especifica ninguna distribucin objetivo APT asigna prioridad
100 a todas las versiones de los paquetes instalados y 500 al resto.
APT aplica las siguientes normas, expuestas por orden de precedencia,
o Si dos o ms versiones tienen la misma prioridad y nmero de versin,
pero o bien difieren en su meta-informacin o se ha proporcionado la
opcin --reinstall se instala la que no est instalada.
Tpicamente, la versin instalada del paquete (prioridad 100) no es tan
reciente como la disponible a travs de sources.list(5) (prioridad 500 o
990). Entonces el paquete se actualizar cuando se ejecute apt-get
install algn-paquete o apt-get upgrade.
Rara vez la versin instalada de un paquete es ms reciente que
cualquiera de las versiones disponibles. En ste caso no se instalar la
versin anterior del paquete cuando se ejecute apt-get install algn-
paquete o apt-get upgrade.
A veces la versin instalada de un paquete es ms reciente que la versin
perteneciente a la distribucin objetivo, pero no tan reciente como la
versin de otra distribucin. Este tipo de paquetes se actualizarn cuando
se ejecute apt-get install algn-paquete o apt-get upgrade porque al
menos uno de los ejemplares disponibles tiene una prioridad mayor que
la versin instalada.
EL EFECTO DE LAS PREFERENCIAS SOBRE APT
El fichero de preferencias de APT permite al administrador del sistema
controlar las asignaciones de prioridades. El fichero consiste en uno o
ms registros de varias lneas separados entre s por espacios en blanco.
Los registros pueden tener una o dos formas: una especfica y otra gen-
eral.
o La forma especfica asigna una prioridad ("Pin-Priority") a un paquete
concreto y se aplica a una versin o rango de versiones. Por ejemplo,
el siguiente registro asigna una prioridad alta a todas las versiones
del paquete perl cuyo nmero de versin empiece con "5.8".
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
o La forma general asigna una prioridad a todas las versiones de los
paquetes en una distribucin (esto es, a todas las versiones de paque-
tes provenientes de un fichero Release), o a todos las versiones de
un paquete que provienen de un sitio concreto en internet, identifi-
cado por su nombre de dominio.
Esta forma general del fichero de preferencias de APT slo se aplica a
grupos de paquetes. Por ejemplo, el siguiente registro hace que
asigne una prioridad alta a todas las versiones disponibles desde un
sitio local.
Package: *
Pin: origin ""
Pin-Priority: 999
El siguiente registro asigna una prioridad alta a todas las versiones
de los paquetes pertenecientes a la distribucin que tiene como nombre
de Archivo "stable" y como nmero de versin "3.0".
Package: *
Pin: release a=unstable, v=3.0
Pin-Priority: 50
CMO INTERPRETA APT LAS PRIORIDADES?
Las prioridades (P) asignadas en el fichero de preferencias deben ser
nmeros enteros. Se interpretan (en general) del siguiente modo:
P > 1000
la versin se instala incluso si es una versin anterior a la
instalada en el sistema.
990 < P <=1000
la versin se instala aunque no venga de la distribucin objetivo,
a menos que la versin instalada sea ms reciente.
500 < P <=990
la versin se instala a menos que exista otro ejemplar disponible
perteneciente a la distribucin objetivo o bien la versin instal-
ada sea ms reciente.
100 < P <=500
la versin se instala a menos que exista un ejemplar
perteneciente a otra distribucin o la versin instalada sea ms
reciente.
0 < P <=100
la versin slo se instala si no hay ninguna versin del paquete
instalado.
P < 0 la versin nunca se instala.
Si uno de los registros de forma especfica descritos arriba coinciden
con una versin disponible de un paquete, el registro determina la pri-
oridad de la versin. En caso de que esto no sea as, si cualquier nmero
de registros de forma general coinciden con una versin, el primero
determina la prioridad de la versin 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
o Otras versiones que tengan un origen distinto al sistema local lis-
tadas en sources.list(5) y que pertenezcan a la distribucin inestable
slo se instalarn si se seleccionan para instalar y no hay ninguna
versin del paquete instalado.
DETERMINACIN DE LA VERSIN DEL PAQUETE Y DE LAS PROPIEDADES DE LA DIS-
TRIBUCIN
Los recursos del 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 encuentra normalmente en el directorio
.../dists/nombre-dist/ componente/arquitectura, por ejemplo,
.../dists/stable/main/binary-i386/Packages. El fichero consiste en una
serie de registros de varias lneas, uno por cada paquete disponible en
ese directorio. Para montar un repositorio de APT slo son significati-
vas dos de las lneas de cada registro:
La lnea Package:
Indica el nombre del paquete
La lnea Version:
Indica el nmero de versin del paquete
El fichero Release normalmente se encuentra en el directorio
.../dists/nombre-dist, por ejemplo, .../dists/stable/Release, o
.../dists/woody/Release. El fichero consiste en registros de una sola
lnea que se aplican a todos los paquetes por debajo del directorio
padre. Al contrario que el fichero Packages, casi todas las lneas del
fichero Release son relevantes para las prioridades de APT:
La lnea Archive:
Indica el nombre del archivo al que pertenecen todos los paque-
tes del rbol de directorios. Por ejemplo, la lnea "Archive: sta-
ble" especifica que todos los paquetes en el rbol de directorios
por debajo del directorio raz marcado en el fichero Release estn
en un archivo de estable. Para especificar una preferencia de
acuerdo con este parmetro tendr que poner la siguiente lnea en
el fichero de preferencias de APT:
Pin: release a=stable
La lnea Version:
Indica la versin de la distribucin. Por ejemplo, los paquetes en
rbol pueden pertenecer a la versin 3.0 de Debian GNU/Linux. Dese
cuenta de que pruebas e inestable no tienen una versin asignada
porque no han sido liberadas. Para especificar una preferencia
de acuerdo con este parmetro tendr que poner una de las sigu-
ientes lnea en el fichero de preferencias de APT:
Pin: release v=3.0
La lnea Origin:
Indica la procedencia de los paquetes en el rbol de directorios
del fichero Release. La procedencia ms comn es Debian. Para
especificar una preferencia de acuerdo con este parmetro tendr
que poner la siguiente lnea en el fichero de preferencias de
APT:
Pin: release o=Debian
La lnea Label:
nombra la etiqueta de los paquetes en los rboles de directorios
del fichero Release. Normalmente es Debian. Para especificar una
preferencia de acuerdo con este parmetro tendr que poner la
siguiente lnea en el fichero de preferencias de APT:
Pin: release l=Debian
Todos los ficheros Packages y Release que se obtienen de los recursos
de sources.list(5) se guardan en el directorio /var/lib/apt/lists, o en
el directorio definido por la variable Dir::State::Lists, que puede
estar definida 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 seccin contrib de la distribucin
inestable.
LNEAS OPCIONALES EN UN REGISTRO DE PREFERENCIAS DE APT
Cada registro en el fichero de preferencias de APT puede comenzar con
una o ms lneas que tengan como primera palabra Explanation:. til para
comentarios.
La lnea Pin-Priority: es opcional. Si se omite, APT asigna una priori-
dad un nmero menor que la ltima prioridad especificada en una lnea que
empieze con Pin-Priority: release ....
EJEMPLOS
SIGUIENDO LA DISTRIBUCIN ESTABLE
El siguiente fichero de preferencias de APT provoca que APT asigne una
prioridad mayor de la que asigna por omisin (500) a todos los ejem-
plares de la distribucin estable y una prioridad ms baja al resto de
las distribuciones Debian.
Explanation: Desinstalar o no instalar los ejemplares que no
Explanation: pertenecen a la distribucin estable
Package: *
Pin: release a=stable
Pin-Priority: 900
Package: *
Pin: release o=Debian
Pin-Priority: -10
SIGUIENDO LA DISTRIBUCIN DE PRUEBAS O INESTABLE
El siguiente fichero de preferencias de APT provocar que APT asigne
mayor prioridad a las versiones de la distribucin de pruebas, una pri-
oridad menor a los paquetes de la distribucin inestable, y una priori-
dad 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 la rdenes siguientes hace que APT actualice los
paquetes a la ltima versin de la distribucin de pruebas.
apt-get install paquete
apt-get upgrade
apt-get dist-upgrade
La siguiente orden hace que APT actualice un determinado paquete a la
ltima versin de la distribucin inestable. Ms tarde, apt-get upgrade
actualizarn el paquete a la ltima versin de la distribucin de pruebas
si es ms reciente que la versin instalada, de otro modo, se instalar la
versin ms reciente de la distribucininestable si es ms reciente que la
versin instalada.
apt-get install paquete/unstable
VASE ADEMS
apt-get(8) apt-cache(8) apt.conf(5) sources.list(5)
FALLOS
Vea la pgina de fallos de APT <URL:http://bugs.debian.org/src:apt>. Si
desea avisar de un fallo en APT, vea /usr/share/doc/debian/bug-report-
ing.txt o la orden reportbug(1).
AUTOR
APT fue escrito por el equipo de APT <apt@packages.debian.org>.
TRADUCTOR
Traduccin de Rubn Porras Campo <debian-l10n-spanish@lists.debian.org>
Man(1) output converted with
man2html