- initial import of revision 374 from cnc
[apt.git] / doc / es / apt_preferences.es.5.sgml
1 <!-- -*- mode: sgml; mode: fold -*- -->
2 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
3
4 <!ENTITY % aptent SYSTEM "apt.ent.es">
5 %aptent;
6
7 ]>
8
9 <!-- 
10 (c) 2003 Software in the Public Interest
11 Esta traducción ha sido realizada por Rubén Porras Campo <nahoo@inicia.es>
12 y revisada por Javier Fernández-Sanguino <jfs@computer.org> 
13 Está basada en la página de manual original:
14 versión 1.4 del CVS de
15 /cvs/debian-doc/manpages/english/apt/apt_preferences.5.sgml
16  -->
17
18 <refentry lang=es>
19  &apt-docinfo;
20
21  <refmeta>
22    <refentrytitle>apt_preferences</>
23    <manvolnum>5</>
24  </refmeta>
25
26  <!-- Man page title -->
27  <refnamediv>
28     <refname>apt_preferences</>
29     <refpurpose>Fichero de preferencias de APT</>
30  </refnamediv>
31
32 <RefSect1>
33 <Title>Descripción</Title>
34 <para>
35 El fichero de preferencias de APT <filename>/etc/apt/preferences</>
36 se puede usar para controlar las versiones de los paquetes seleccionados.
37 </para>
38
39 <para>Cuando el fichero &sources-list; contiene referencias a más de una
40 distribución (por ejemplo, <literal>estable</literal> y <literal>pruebas
41 </literal>). APT asigna una prioridad a cada versión disponible. 
42 Limitado por las dependencias, <command>apt-get</command> selecciona la versión
43 con mayor prioridad.
44 </para>
45
46 <para>El fichero de preferencias de APT modifica las prioridades asignadas por
47 APT, dando control al usuario sobre que ejemplar se seleccionar para la
48 instalación.
49 </para>
50 <para>
51 Puede estén disponibles varios ejemplares de la misma versión de un paquete
52 cuando el fichero &sources-list; contenga referencias a más de una fuente. En
53 este caso <command>apt-get</command> descarga el ejemplar que aparezca listado
54 primero en el fichero &sources-list;. El fichero de preferencias de APT no
55 modifica la elección del ejemplar, sólo la elección de la versión.
56 </para>
57 <RefSect2><Title>¿Cómo asigna APT las prioridades?</>
58
59 <para>Si no existe el fichero de preferencias o no hay ninguna entrada en éste
60 que se pueda aplicar a una determinada versión, se asigna a la versión la 
61 prioridad de la distribución a la que pertenece. Es posible seleccionar una 
62 distribución, &gt;&gt;distribución objetivo&lt;&lt; 
63 (n. t. del inglés <emphasis>target release</emphasis>), que recibe
64 una prioridad mayor que el resto. La distribución objetivo se puede definir
65 en la línea de órdenes al ejecutar <command>apt-get</command> o en el fichero
66 de configuración de APT (<filename>/etc/apt/apt.conf</filename>).
67 Por ejemplo,
68 <programlisting>
69 <command>apt-get install -t testing <replaceable>paquete</replaceable></command>
70 </programlisting>
71 <programlisting>
72 APT::Default-Release "stable";
73 </programlisting>
74 </para>
75
76 <para>
77 Si se ha especificado una distribución objetivo, APT usa el siguiente
78 algoritmo para establecer las prioridades de cada versión de un paquete. 
79 Asigna:
80
81 <variablelist>
82 <varlistentry>
83 <term>prioridad 100</term>
84 <listitem><simpara>a la versión instalada (si existe).</simpara></listitem>
85 </varlistentry>
86 <varlistentry>
87 <term>prioridad 500</term>
88 <listitem><simpara>a la versión que ni está instalada ni pertenece a la 
89 distribución objetivo.</simpara></listitem>
90 </varlistentry>
91 <varlistentry>
92 <term>prioridad 990</term>
93 <listitem><simpara>a las versiones que no están instaladas pero que
94 pertenecen a la distribución objetivo.</simpara></listitem>
95 </varlistentry>
96 </variablelist>
97 </para>
98
99 <para>
100 Si no se especifica ninguna distribución objetivo APT asigna prioridad 100 a
101 todas las versiones de los paquetes instalados y 500 al resto.
102 </para>
103
104 <para>
105 APT aplica las siguientes normas, expuestas por orden de precedencia, 
106 para determinar qué versión del paquete debe instalar.
107
108 <itemizedlist>
109 <listitem><simpara>Nunca instalar una versión anterior de un paquete en lugar 
110 de la instalada a menos que la prioridad de la versión disponible supere 1000 
111 (Dese cuenta que ninguna de las prioridades que asigna APT por omisión superan
112 1000, éstas prioridades sólo se pueden establecer mediante el fichero de 
113 preferencias. Tenga en consideración que instalar una versión anterior del
114 paquete puede ser peligroso).
115 </simpara></listitem>
116 <listitem><simpara>Instalar la versión de mayor prioridad.
117 </simpara></listitem>
118 <listitem><simpara>Si dos o más versiones tienen la misma prioridad, 
119 instala la más reciente (esto es, la que tiene un número de versión mayor).
120 </simpara></listitem>
121 <listitem><simpara>Si dos o más versiones tienen la misma prioridad y número de
122 versión, pero o bien difieren en su meta-información o se a proporcionado la
123 opción <literal/--reinstall/ se instala la que no está instalada.
124 </simpara></listitem>
125 </itemizedlist>
126 </para>
127
128 <para>
129 Típicamente, la versión instalada del paquete (prioridad 100)
130 no es tan reciente como la disponible a través de &sources-list; 
131 (prioridad 500 o 990). Entonces el paquete se actualizará cuando se ejecute
132 <command>apt-get install <replaceable>algún-paquete</replaceable></command> o
133 <command>apt-get upgrade</command>.
134 </para>
135
136 <para>Rara vez la versión instalada de un paquete es <emphasis/más/ reciente
137 que cualquiera de las versiones disponibles. En éste caso no se instalará la
138 versión anterior del paquete cuando se ejecute <command>apt-get install
139 <replaceable>algún-paquete</replaceable></command> o <command>apt-get
140 upgrade</command>.
141 </para>
142
143 <para>
144 A veces la versión instalada de un paquete es más reciente que la 
145 versión perteneciente a la distribución objetivo, pero no tan reciente como la 
146 versión de otra distribución. Este tipo de paquetes se actualizarán cuando se
147 ejecute <command>apt-get install
148 <replaceable>algún-paquete</replaceable></command> o <command>apt-get 
149 upgrade</command>.porque al menos <emphasis/uno/ de los ejemplares disponibles
150 tiene una prioridad mayor que la versión instalada.
151 </para>
152
153 </RefSect2>
154
155 <RefSect2><Title>El efecto de las preferencias sobre APT</>
156
157 <para>
158 El fichero de preferencias de APT permite al administrador del sistema controlar
159 las asignaciones de prioridades. El fichero consiste en uno o más registros de
160 varias líneas separados entre sí por espacios en blanco. Los registros pueden
161 tener una o dos formas: una específica y otra general.
162 <itemizedlist>
163 <listitem>
164 <simpara>
165 La forma específica asigna una prioridad ("Pin-Priority") a un paquete
166 concreto y se aplica a una versión o rango de versiones. Por ejemplo,
167 el siguiente registro asigna una prioridad alta a todas las versiones del
168 paquete <filename/perl/ cuyo número de versión empiece con "<literal/5.8/".
169 </simpara>
170
171 <programlisting>
172 Package: perl
173 Pin: version 5.8*
174 Pin-Priority: 1001
175 </programlisting>
176 </listitem>
177
178 <listitem><simpara>
179 La forma general asigna una prioridad a todas las versiones de los paquetes
180 en una distribución (esto es, a todas las versiones de paquetes provenientes
181 de un fichero <filename/Release/), o a todos las versiones de un paquete
182 que provienen de un sitio concreto en internet, identificado por su
183 nombre de dominio.
184 </simpara>
185
186 <simpara>
187 Esta forma general del fichero de preferencias de APT sólo se aplica a grupos de
188 paquetes. Por ejemplo, el siguiente registro hace que asigne una prioridad alta
189 a todas las versiones disponibles desde un sitio local.
190 </simpara>
191
192 <programlisting>
193 Package: *
194 Pin: origin ""
195 Pin-Priority: 999
196 </programlisting>
197
198 <simpara>
199 Un aviso acerca de la palabra clave usada en "<literal/origin/": no debe de
200 confundirse con el origen ("Origin:") de una distribución tal y como se
201 especifica en el fichero <filename/Release/. Lo que sigue a "Origin:" en un
202 fichero <filename/Release/ no es una dirección de un sitio de internet, sino el
203 autor o el nombre del proveedor, tales como "Debian" o "Ximian".
204 </simpara>
205
206 <simpara>
207 El siguiente registro asigna una prioridad baja a todas las versiones de los
208 paquetes pertenecientes a cualquier distribución que tenga como nombre de
209 Archivo "<literal/unstable/".
210 </simpara>
211
212 <programlisting>
213 Package: *
214 Pin: release a=unstable
215 Pin-Priority: 50
216 </programlisting>
217
218 <simpara>
219 El siguiente registro asigna una prioridad alta a todas las versiones de los
220 paquetes pertenecientes a la distribución que tiene como nombre de Archivo
221 "<literal/stable/" y como número de versión "<literal/3.0/".
222 </simpara>
223
224 <programlisting>
225 Package: *
226 Pin: release a=unstable, v=3.0
227 Pin-Priority: 50
228 </programlisting>
229 </listitem>
230 </itemizedlist>
231 </para>
232
233 </RefSect2>
234
235 <RefSect2>
236 <Title>¿Cómo interpreta APT las prioridades?</Title>
237
238 <para>
239 Las prioridades (P) asignadas en el fichero de preferencias deben ser
240 números enteros. Se interpretan (en general) del siguiente modo:
241
242 <variablelist>
243 <varlistentry>
244 <term>P &gt; 1000</term>
245 <listitem><simpara>la versión se instala incluso si es una versión
246 anterior a la instalada en el sistema.</simpara></listitem>
247 </varlistentry>
248 <varlistentry><term>990 &lt; P &lt;=1000</term>
249 <listitem><simpara>la versión se instala aunque no venga de la distribución
250 objetivo, a menos que la versión instalada sea más reciente.
251 </simpara></listitem> 
252 </varlistentry>
253 <varlistentry><term>500 &lt; P &lt;=990</term>
254 <listitem><simpara>la versión se instala a menos que exista otro ejemplar
255 disponible perteneciente a la distribución objetivo o bien la versión 
256 instalada sea más reciente.</simpara></listitem>
257 </varlistentry>
258 <varlistentry><term>100 &lt; P &lt;=500</term>
259 <listitem><simpara>la versión se instala a menos que exista un ejemplar
260 perteneciente a otra distribución o la versión instalada sea más reciente.
261 </simpara></listitem>
262 <varlistentry><term>0 &lt; P &lt;=100</term>
263 <listitem><simpara>la versión sólo se instala si no hay ninguna versión 
264 del paquete instalado.</simpara></listitem>
265 </varlistentry>
266 <varlistentry><term>P &lt; 0</term>
267 <listitem><simpara>la versión nunca se instala.
268 </simpara></listitem>
269 </varlistentry>
270 </variablelist>
271 </para>
272
273 <para>
274 Si uno de los registros de forma específica descritos arriba coinciden con una
275 versión disponible de un paquete, el registro determina la prioridad de la
276 versión. En caso de que esto no sea así, si cualquier número de registros de
277 forma general coinciden con una versión, el primero determina la prioridad de la
278 versión del paquete.
279 </para>
280
281 <para>
282 Por ejemplo, suponga que el fichero de preferencias de APT 
283 contiene los tres registros antes mencionados:
284
285 <programlisting>
286 Package: perl
287 Pin: version 5.8*
288 Pin-Priority: 1001
289
290 Package: *
291 Pin: origin ""
292 Pin-Priority: 999
293
294 Package: *
295 Pin: release unstable
296 Pin-Priority: 50
297 </programlisting>
298
299 Entonces:
300
301 <itemizedlist>
302 <listitem><simpara>La versión más reciente disponible del paquete
303 <literal/perl/ se instala mientras que el número de versión empieze 
304 con "<literal/5.8/". Si se encuentra disponible <emphasis/cualquier/ 
305 versión 5.8* de <literal/perl/ y la versión instalada es 5.9*, entonces 
306 se instala la versión5.8*.
307 </simpara></listitem><listitem><simpara>Cualquier otra versión de un paquete
308 distinto de 
309 <literal/perl/ disponible desde el sistema local tiene prioridad sobre el
310 resto de las versiones, incluso sobre los pertenecientes a la distribución 
311 objetivo.
312 </simpara></listitem>
313 <listitem><simpara>Otras versiones que tengan un origen distinto al sistema
314 local listadas en &sources-list; y que pertenezcan a la distribución
315 <literal/inestable/ sólo se instalarán si se seleccionan para instalar y no hay
316 ninguna versión del paquete instalado.
317 </simpara></listitem>
318 </itemizedlist>
319 </para>
320 </RefSect2>
321
322 <RefSect2>
323 <Title>Determinación de la versión del paquete y de las propiedades de la
324 distribución</Title>
325
326 <para>
327 Los recursos del fichero &sources-list; deben proporcionar los ficheros
328 <filename>Packages</filename> y <filename>Release</filename>. Éstos describen
329 los paquetes disponibles en cada uno de los sitios.
330 </para>
331
332 <para>El fichero <filename>Packages</filename> se encuentra normalmente en
333 el directorio <filename>.../dists/<replaceable>nombre-dist</replaceable>/
334 <replaceable>componente</replaceable>/<replaceable>arquitectura</replaceable>
335 </filename>,
336 por ejemplo, <filename>.../dists/stable/main/binary-i386/Packages</filename>.
337 El fichero consiste en una serie de registros de varias líneas, uno por cada
338 paquete disponible en ese directorio. Para montar un repositorio de APT sólo
339 son significativas dos de las líneas de cada registro:
340 <variablelist>
341 <varlistentry>
342 <term>La línea <literal/Package:/ </term>
343 <listitem><simpara>Indica el nombre del paquete</simpara></listitem>
344 </varlistentry>
345 <varlistentry>
346 <term>La línea <literal/Version:/ </term>
347 <listitem><simpara>Indica el número de versión del paquete</simpara></listitem>
348 </varlistentry>
349 </variablelist>
350 </para>
351
352 <para>El fichero <filename>Release</filename> normalmente se encuentra en el
353 directorio 
354 <filename>.../dists/<replaceable>nombre-dist</replaceable></filename>,
355 por ejemplo, <filename>.../dists/stable/Release</filename>,
356 o <filename>.../dists/woody/Release</filename>.
357 El fichero consiste en registros de una sola línea que se aplican a 
358 <emphasis/todos/ los paquetes por debajo del directorio 
359 padre. Al contrario que el fichero <filename/Packages/, casi todas las 
360 líneas del fichero <filename/Release/ son relevantes para las prioridades de 
361 APT: 
362
363 <variablelist>
364 <varlistentry>
365 <term>La línea <literal/Archive:/ </term>
366 <listitem><simpara>Indica el nombre del archivo al que pertenecen todos los
367 paquetes del árbol de directorios. Por ejemplo, la línea 
368 "Archive: stable" especifica que todos los paquetes en el árbol de 
369 directorios por debajo del directorio raíz marcado en el fichero 
370 <filename/Release/ están en un archivo de <literal/estable/. Para
371 especificar una preferencia de acuerdo con este parámetro
372 tendrá que poner la siguiente línea en el fichero de preferencias de APT:
373 </simpara>
374 <programlisting>
375 Pin: release a=stable
376 </programlisting>
377 </listitem>
378 </varlistentry>
379
380 <varlistentry>
381 <term>La línea <literal/Version:/ </term>
382 <listitem><simpara>Indica la versión de la distribución. Por ejemplo, los 
383 paquetes en árbol pueden pertenecer a la versión 3.0 de Debian GNU/Linux. Dese
384 cuenta de que <literal/pruebas/ e <literal/inestable/ no tienen una versión
385 asignada porque no han sido liberadas. Para especificar una preferencia de
386 acuerdo con este parámetro tendrá que poner una de las siguientes línea en el
387 fichero de preferencias de APT:
388 </simpara>
389
390 <programlisting>
391 Pin: release v=3.0
392 Pin: release a=stable v=3.0
393 Pin: release 3.0
394 </programlisting>
395
396 </listitem>
397 </varlistentry>
398
399 <varlistentry>
400 <term>La línea <literal/Component:/ </term>
401 <listitem><simpara>Indica la licencia asociada a los paquetes en el árbol 
402 de directorios correspondiente al fichero <filename/Release/. Por ejemplo, 
403 la línea <literal/Component: main/ especifica que todos los ejemplares son 
404 de la sección <literal/main/, ésto asegura que su licencia se ajusta a las
405 DFSG. Para especificar una preferencia de acuerdo con este parámetro tendrá 
406 que poner la siguiente línea en el fichero de preferencias de APT:
407 </simpara>
408 <programlisting>
409 Pin: release c=main
410 </programlisting>
411 </listitem>
412 </varlistentry>
413
414 <varlistentry>
415 <term>La línea <literal/Origin:/ </term>
416 <listitem><simpara>Indica la procedencia de los paquetes en el árbol de
417 directorios del fichero <filename/Release/. La procedencia más común es
418 <literal/Debian/. Para especificar una preferencia de acuerdo con este 
419 parámetro tendrá que poner la siguiente línea en el fichero de preferencias 
420 de APT:
421 </simpara>
422 <programlisting>
423 Pin: release o=Debian
424 </programlisting>
425 </listitem>
426 </varlistentry>
427
428 <varlistentry>
429 <term>La línea <literal/Label:/ </term>
430 <listitem><simpara>nombra la etiqueta de los paquetes en los árboles de
431 directorios del fichero <filename/Release/. Normalmente es
432 <literal/Debian/. Para especificar una preferencia de acuerdo con este parámetro
433 tendrá que poner la siguiente línea en el fichero de preferencias de APT:
434 </simpara>
435 <programlisting>
436 Pin: release l=Debian
437 </programlisting>
438 </listitem>
439 </varlistentry>
440 </variablelist>
441 </para>
442
443 <para>
444 Todos los ficheros <filename>Packages</filename> y <filename>Release</filename>
445 que se obtienen de los recursos de &sources-list; se guardan en el directorio
446 <filename>/var/lib/apt/lists</filename>, o en el directorio definido por la
447 variable <literal/Dir::State::Lists/, que puede estar definida en el fichero
448 <filename/apt.conf/. Por ejemplo, el fichero
449 <filename>debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release
450 </filename> contiene los ficheros <filename>Release</filename> obtenidos de
451 <literal/debian.lcs.mit.edu/ para la arquitectura <literal/binary-i386/ de la
452 sección <literal/contrib/ de la distribución <literal/inestable/.
453 </para>
454
455 </RefSect2>
456
457 <RefSect2>
458 <Title>Líneas opcionales en un registro de preferencias de APT</Title>
459
460 <para>
461 Cada registro en el fichero de preferencias de APT puede comenzar
462 con una o más líneas que tengan como primera palabra
463 <literal/Explanation:/. Útil para comentarios.
464 </para>
465
466 <para>
467 La línea <literal/Pin-Priority:/ es opcional. Si se omite, APT asigna
468 una prioridad un número menor que la última prioridad especificada en una línea
469 que empieze con <literal/Pin-Priority: release .../.
470 </para>
471 </RefSect2>
472 </RefSect1>
473
474 <RefSect1>
475 <Title>Ejemplos</Title>
476 <RefSect2>
477 <Title>Siguiendo la distribución estable</Title>
478
479 <para>El siguiente fichero de preferencias de APT provoca que APT asigne una
480 prioridad mayor de la que asigna por omisión (500) a todos los ejemplares de
481 la distribución <literal/estable/ y una prioridad más baja al resto de las
482 distribuciones <literal/Debian/.
483
484 <programlisting>
485 Explanation: Desinstalar o no instalar los ejemplares que no
486 Explanation: pertenecen a la distribución estable
487 Package: *
488 Pin: release a=stable
489 Pin-Priority: 900
490
491 Package: *
492 Pin: release o=Debian
493 Pin-Priority: -10
494 </programlisting>
495 </para>
496
497 <para>
498 Con un fichero &sources-list; apropiado y el fichero de preferencias mostrado
499 anteriormente, cualquiera de las siguientes órdenes de APT hace que o bien todo
500 el sistema o bien sólo algunos paquetes se actualicen a la última versión
501 <literal/estable/.
502
503 <programlisting>
504 apt-get install <replaceable>paquete</replaceable>
505 apt-get upgrade
506 apt-get dist-upgrade
507 </programlisting>
508 </para>
509
510 <para>La siguiente orden hace que APT actualice un paquete a la última versión
511 de la distribución de <literal/pruebas/, el paquete no se actualizará de nuevo amenos que se ejecute de nuevo la orden.
512
513 <programlisting>
514 apt-get install <replaceable>paquete</replaceable>/testing
515 </programlisting>
516 </RefSect2>
517
518 <RefSect2>
519 <Title>Siguiendo la distribución de pruebas o inestable</Title>
520
521 <para>El siguiente fichero de preferencias de APT provocará que APT asigne
522 mayor prioridad a las versiones de la distribución de <literal/pruebas/,
523 una prioridad menor a los paquetes de la distribución <literal/inestable/,
524 y una prioridad prohibitiva a los paquetes de otras distribuciones de
525 <literal/Debian/.
526
527 <programlisting>
528 Package: *
529 Pin: release a=testing
530 Pin-Priority: 900
531
532 Package: *
533 Pin: release a=unstable
534 Pin-Priority: 800
535
536 Package: *
537 Pin: release o=Debian
538 Pin-Priority: -10
539 </programlisting>
540 </para>
541
542 <para>
543 Con un fichero &sources-list; adecuado y el fichero de preferencias anterior,
544 cualquiera de la órdenes siguientes hace que APT actualice los paquetes a la
545 última versión de la distribución de <literal/pruebas/.
546
547 <programlisting>
548 apt-get install <replaceable>paquete</replaceable>
549 apt-get upgrade
550 apt-get dist-upgrade
551 </programlisting>
552 </para>
553
554 <para>La siguiente orden hace que APT actualice un determinado paquete a la
555 última versión de la distribución <literal/inestable/. Más tarde,
556 <command>apt-get upgrade</command> actualizarán el paquete a la última versión
557 de la distribución de <literal/pruebas/ si es más reciente que la versión
558 instalada, de otro modo, se instalará la versión más reciente de la
559 distribución<literal/inestable/ si es más reciente que la versión instalada.
560
561 <programlisting>
562 apt-get install <replaceable>paquete</replaceable>/unstable
563 </programlisting>
564 </para>
565
566 </RefSect2>
567 </RefSect1>
568
569 <RefSect1>
570 <Title>Véase además</>
571 <para>
572 &apt-get; &apt-cache; &apt-conf; &sources-list;
573 </para>
574  </RefSect1>
575
576  &manbugs;
577  &manauthor;
578
579   <refsect1>
580     <title>TRADUCTOR</title>
581     <para>
582       Traducción de Rubén Porras Campo
583       &lt;debian-l10n-spanish@lists.debian.org&gt;
584     </para>
585   </refsect1>
586
587 </refentry>