1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
|
<!-- -*- mode: sgml; mode: fold -*- -->
<!-- translation of version 1.6 -->
<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!ENTITY % aptent SYSTEM "apt.ent.fr">
%aptent;
]>
<refentry lang=fr>
&apt-docinfo;
<refmeta>
<refentrytitle>apt_preferences</>
<manvolnum>5</>
</refmeta>
<!-- Man page title -->
<refnamediv>
<refname>apt_preferences</>
<refpurpose>Un fichier de contr�le, utilis� par APT et indiquant des pr�f�rences</>
</refnamediv>
<RefSect1><Title>Description</>
<para>
Le fichier d'APT, <filename>/etc/apt/preferences</>, peut �tre utilis� pour
choisir la version des paquets que l'on veut installer.
</para>
<para>Quand le fichier &sources-list; contient des r�f�rences � plusieurs
distributions (par exemple, <literal>stable</literal> et
<literal>testing</literal>), plusieurs versions d'un paquet peuvent �tre
install�es ; et, si ce fichier contient, pour une m�me distribution,
des r�f�rences � plusieurs sites de t�l�chargement, il peut exister plusieurs
exemplaires de la m�me version d'un paquet. Apt affecte une priorit� �
chaque exemplaire disponible. (Dans ce qui suit, un exemplaire est l'
exemplaire d'un paquet disponible selon le fichier &sources-list;.)
La commande <command>apt-get</command>, tenant compte des contraintes de
d�pendance, installe l'exemplaire poss�dant la plus haute priorit�. Si deux
exemplaires ont la m�me priorit�, elle installe l'exemplaire le plus r�cent,
c'est-�-dire celui qui poss�de le num�ro de version le plus haut.
</para>
<para>Le fichier des pr�f�rences annule les priorit�s assign�es par d�faut
aux exemplaires des paquets : ainsi l'utilisateur peut choisir
l'exemplaire qu'il veut installer.
</para>
<RefSect2><Title>Les priorit�s assign�es par d�faut</>
<para>Quand le fichier des pr�f�rences n'existe pas, ou quand aucune entr�e
de ce fichier ne s'applique � un exemplaire pr�cis, la priorit� affect�e �
cet exemplaire est la priorit� de la distribution � laquelle il appartient.
On peut distinguer une distribution et lui donner une priorit� plus haute
que celle des autres distributions : on l'appelle la distribution par
d�faut ou � target release � et elle peut �tre d�finie sur la ligne
de commande de <command>apt-get</command> ou dans le fichier de configuration
d'APT, <filename>/etc/apt/apt.conf</filename>.
Par exemple :
<programlisting>
# Commande pour installer la version <literal/testing/ d'un <replaceable>paquet</replaceable>
<command>apt-get install -t testing <replaceable>paquet</replaceable></command>
</programlisting>
<programlisting>
# Utiliser le fichier de configuration pour rendre la distribution
<literal/stable/ la distribution par defaut (ou � target release �)
APT::Default-Release "stable";
</programlisting>
</para>
<para>Quand une distribution par d�faut a �t� indiqu�e, APT utilise
l'algorithme suivant pour d�terminer la priorit� des exemplaires d'un
paquet :
<variablelist>
<varlistentry>
<term>une priorit� �gale � 100</term>
<listitem><simpara>est affect�e � l'exemplaire d�j� install� (s'il existe).
</simpara></listitem>
</varlistentry>
<varlistentry>
<term>une priorit� �gale � 500</term>
<listitem><simpara>est affect�e aux exemplaires qui ne sont pas install�s et
qui n'appartiennent pas � la distribution par d�faut.
</simpara></listitem>
</varlistentry>
<varlistentry>
<term>une priorit� �gale � 990</term>
<listitem><simpara>est affect�e aux exemplaires qui ne sont pas install�s et
qui appartiennent � la distribution par d�faut.
</simpara></listitem>
</varlistentry>
</variablelist>
</para>
<para>Quand aucune distribution par d�faut n'a �t� indiqu�e, APT affecte
simplement une priorit� �gale � 100 � tout exemplaire install� d'un paquet
et une priorit� �gale � 500 � tout exemplaire non install� d'un paquet.
</para>
<para>Puis APT applique les r�gles suivantes pour d�terminer l'exemplaire
du paquet qu'il faut installer (elles sont list�es par ordre de priorit�) :
<itemizedlist>
<listitem><simpara>Ne jamais revenir en arri�re, sauf si la priorit� d'un
exemplaire disponible d�passe 1000. (� Revenir en arri�re � signifie
installer une version moins r�cente que la version install�e. Il
faut noter qu'aucune des priorit�s par d�faut n'exc�de 1000 ; de telles
valeurs ne peuvent �tre d�finies que dans le fichier des pr�f�rences.)
</simpara></listitem>
<listitem><simpara>Installer l'exemplaire qui poss�de la priorit� la plus
haute.
</simpara></listitem>
<listitem><simpara>Quand deux (ou plus) exemplaires ont la m�me priorit�,
installer l'exemplaire le plus r�cent.
</simpara></listitem>
<listitem><simpara>Quand deux (ou plus) exemplaires ont le m�me num�ro de
version, installer l'exemplaire dont la source est list�e en premier dans
&sources-list;. (L'exemplaire install�, s'il existe, est toujours choisi
dans une telle comparaison, sauf si la commande
<command>apt-get --reinstall</command> est utilis�e.)
</simpara></listitem>
</itemizedlist>
</para>
<para>En g�n�ral, l'exemplaire install� d'un paquet (priorit� 100) n'est
pas aussi r�cent que l'un des exemplaires disponibles dans les sources
list�es dans le fichier &sources-list; (priorit� 500 ou 990). Et donc le
paquet sera mis � niveau avec la commande :
<command>apt-get install</command> ou <command>apt-get dist-upgrade</command>.
</para>
<para>L'exemplaire install� d'un paquet peut �tre - rarement -
<emphasis/plus/ r�cent que tout autre exemplaire disponible. Pas de retour
en arri�re.
</para>
<para>Parfois, l'exemplaire install� d'un paquet est plus r�cent que la
version appartenant � la distribution par d�faut, mais moins r�cent que
la version appartenant � une autre distribution. Un tel exemplaire sera mis
� niveau car au moins <emphasis/l'un/ des exemplaires disponibles poss�de
une plus haute priorit� que la sienne.
</para>
</RefSect2>
<RefSect2><Title>Cons�quences des pr�f�rences</>
<para>Le fichier des pr�f�rences permet � l'administrateur-syst�me de
choisir ses priorit�s. Ce fichier est constitu� d'une ou plusieurs entr�es
s�par�es par des lignes blanches. Ces entr�es peuvent avoir deux formes,
une forme particuli�re et une forme g�n�rale.
<itemizedlist>
<listitem>
<simpara>La forme particuli�re affecte une priorit�
(<emphasis>Pin-Priority</emphasis>) � un paquet pr�cis, � une version pr�cise
ou � un intervalle sp�cifiant plusieurs versions. Par exemple, l'entr�e
suivante affecte une priorit� haute � toutes les versions du paquet
<filename/perl/ dont le num�ro de version commence par <literal/5.8/.
</simpara>
<programlisting>
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
</programlisting>
</listitem>
<listitem><simpara>
La forme g�n�rale affecte une priorit� � toutes les versions d'un paquet dans
une distribution donn�e (c'est-�-dire, � toutes les versions d'un paquet qui
sont list�es dans un fichier <filename/Release/), ou � toutes les versions
d'un paquet provenant d'un site internet identifi� par un nom pleinement
qualifi�.
</simpara>
<simpara>Cette forme g�n�rale des entr�es du fichier des pr�f�rences
s'applique seulement aux groupes de paquets. Par exemple, l'entr�e suivante
affecte une priorit� haute � tous les exemplaires disponibles dans le
site local.
</simpara>
<programlisting>
Package: *
Pin: origin ""
Pin-Priority: 999
</programlisting>
<simpara>Attention ! le mot-cl� utilis� ici, <literal/origin/, ne doit pas
�tre confondu avec l'� Origin: � d'une distribution indiqu� dans
un fichier <filename/Release/. Ce qui suit l'�tiquette � Origin: �
dans un fichier <filename/Release/ n'est pas l'adresse d'un site internet
mais le nom d'un auteur ou d'un vendeur, comme Debian ou Ximian.
</simpara>
<simpara>L'entr�e suivante affecte une priorit� basse � toutes les versions
d'un paquet appartenant � tout distribution dont le nom
d'� Archive � (<literal/a/) est <literal/unstable/.
</simpara>
<programlisting>
Package: *
Pin: release a=unstable
Pin-Priority: 50
</programlisting>
<simpara>L'entr�e suivante affecte une priorit� haute � toutes les versions
d'un paquet appartenant � toute distribution dont le nom
d'� Archive � (<literal/a/) est <literal/stable/ et dont le num�ro
de � Version � (<literal/v/) est <literal/3.0/.
</simpara>
<programlisting>
Package: *
Pin: release a=stable, v=3.0
Pin-Priority: 50
</programlisting>
</listitem>
</itemizedlist>
</para>
</RefSect2>
<RefSect2><Title>Comment APT interpr�te-t-il les priorit�s ?</Title>
<para>Les priorit�s (P) indiqu�es dans le fichier des pr�f�rences doivent
�tre des entiers positifs ou n�gatifs. Ils sont interpr�t�s comme suit :
<variablelist>
<varlistentry><term>P > 1000</term>
<listitem><simpara>Cette priorit� entra�ne l'installation du paquet m�me s'il
s'agit d'un retour en arri�re.
</simpara></listitem>
</varlistentry>
<varlistentry><term>990 < P <=1000</term>
<listitem><simpara>L'exemplaire sera install�, m�me s'il n'appartient pas �
la distribution par d�faut ; mais il ne sera pas install� si l'exemplaire
install� est plus r�cent.
</simpara></listitem>
</varlistentry>
<varlistentry><term>500 < P <=990</term>
<listitem><simpara>L'exemplaire sera install�, sauf s'il existe un exemplaire
appartenant � la distribution par d�faut ou si la version install�e est plus
r�cente.
</simpara></listitem>
</varlistentry>
<varlistentry><term>100 < P <=500</term>
<listitem><simpara>L'exemplaire sera install�, sauf s'il existe un exemplaire
appartenant � une autre distribution ou si la version install�e est plus
r�cente.
</simpara></listitem>
<varlistentry><term>0 <= P <=100</term>
<listitem><simpara> L'exemplaire sera install� si aucun exemplaire du paquet
n'est install�.
</simpara></listitem>
</varlistentry>
<varlistentry><term>P < 0</term>
<listitem><simpara>Cette priorit� emp�che l'installation de l'exemplaire.
</simpara></listitem>
</varlistentry>
</variablelist>
</para>
<para>Si l'une des entr�es de forme particuli�re correspond � l'exemplaire
disponible d'un paquet, cette entr�e d�termine la priorit� de cet exemplaire.
Si deux entr�es de forme particuli�re correspondent � l'exemplaire disponible
d'un paquet, la premi�re entr�e rencontr�e d�termine la priorit�. Si deux
entr�es de forme g�n�rale correspondent � l'exemplaire disponible d'un paquet,
la premi�re entr�e rencontr�e d�termine la priorit�.
</para>
<para>Supposons par exemple que le fichier des pr�f�rences contienne les trois
entr�es d�crites plus haut :
<programlisting>
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
Package: *
Pin: origin ""
Pin-Priority: 999
Package: *
Pin: release unstable
Pin-Priority: 50
</programlisting>
Alors :
<itemizedlist>
<listitem><simpara> La version la plus r�cente du paquet <literal/perl/ sera
install� pour autant que son num�ro de version commence par <literal/5.8/.
Si l'<emphasis/une/ des versions 5.8* existe et si la version install�e est
une version 5.9*, il y aura un retour en arri�re.
</simpara></listitem>
<listitem><simpara>Les exemplaires des paquets (autres que <literal/perl/)
disponibles dans le site local ont priorit� sur les autres exemplaires,
m�me ceux appartenant � la distribution par d�faut.
</simpara></listitem>
<listitem><simpara> L'exemplaire d'un paquet dont l'origine n'est pas le site
local mais un site internet list� dans &sources-list; et qui appartient � une
distribution <literal/unstable/, ne sera install� que si aucun exemplaire
du paquet n'est d�j� install�.
</simpara></listitem>
</itemizedlist>
</para>
</RefSect2>
<RefSect2><Title>D�termination de la version des paquets et des propri�t�s des
distributions</Title>
<para>Chaque source list�e dans le fichier &sources-list; doit fournir
les fichiers <filename>Packages</filename> et <filename>Release</filename>
qui d�crivent les exemplaires des paquets disponibles � cet endroit.
</para>
<para>Le fichier <filename>Packages</filename> se trouve normalement dans le
r�pertoire
<filename>.../dists/<replaceable>dist-name</replaceable>/<replaceable>component</replaceable>/<replaceable>arch</replaceable></filename>, par exemple,
<filename>.../dists/stable/main/binary-i386/Packages</filename>. Il consiste
en entr�es compos�es de lignes, une pour chaque paquet disponible dans le
r�pertoire. Seules deux lignes des entr�es sont pertinentes pour la
d�termination des priorit�s :
<variablelist>
<varlistentry>
<term>La ligne <literal/Package:/ </term>
<listitem><simpara>donne le nom du paquet</simpara></listitem>
</varlistentry>
<varlistentry>
<term>La ligne <literal/Version:/ </term>
<listitem><simpara>donne le num�ro de version du paquet</simpara></listitem>
</varlistentry>
</variablelist>
</para>
<para> Le fichier <filename>Release</filename> se trouve normalement dans le
r�pertoire
<filename>.../dists/<replaceable>dist-name</replaceable></filename>, par exemple, <filename>.../dists/stable/Release</filename>, ou <filename>.../dists/woody/Release</filename>.
Il consiste en une seule entr�e compos�e de plusieurs lignes qui s'applique �
<emphasis/tous/ les exemplaires des paquets situ�s dans les r�pertoires sous
le r�pertoire parent. Contrairement au fichier <filename/Packages/, presque
toutes les lignes du fichier <filename/Release/ sont pertinentes pour
d�terminer les priorit�s :
<variablelist>
<varlistentry>
<term>La ligne <literal/Archive:/ </term>
<listitem><simpara>nomme l'archive � laquelle appartiennent tous les
exemplaires des paquets situ�s dans les r�pertoires. Par exemple, la ligne
<literal/Archive: stable/ indique que tous les paquets dans les r�pertoires
situ�s sous le r�pertoire parent du fichier <filename/Release/ appartiennent
� l'archive <literal/stable/. Indiquer cette valeur dans le fichier des
pr�f�rences demanderait cette ligne :
</simpara>
<programlisting>
Pin: release a=stable
</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term>La ligne <literal/Version:/ </term>
<listitem><simpara>indique la version de la distribution. Par exemple, les
exemplaires des paquets dans les r�pertoires peuvent appartenir � la
distribution Debian GNU/Linux version 3.0. Il n'y a pas de num�ro de version
pour les distributions testing et unstable car elles n'ont pas encore �t�
publi�es. Indiquer cette valeur dans le fichier des pr�f�rences demanderait
ces lignes :
</simpara>
<programlisting>
Pin: release v=3.0
Pin: release a=stable v=3.0
Pin: release 3.0
</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term>La ligne <literal/Component:/</term>
<listitem><simpara>nomme un composant qui indique le type de licence associ�
aux exemplaires situ�s dans les r�pertoires sous le fichier
<filename/Release/. Par exemple, la ligne <literal/Component: main/ indique
que tous les exemplaires dans les r�pertoires appartiennent au composant
<literal/main/, c'est-�-dire que leur licence est en accord avec les
Directives Debian pour le logiciel libre. Indiquer ce composant dans le
fichier des pr�f�rences demanderait cette ligne :
</simpara>
<programlisting>
Pin: release c=main
</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term>La ligne <literal/Origin:/ </term>
<listitem><simpara>nomme le producteur des exemplaires des paquets situ�s
dans les r�pertoires sous le fichier <filename/Release/. En g�n�ral, c'est
<literal/Debian/. Indiquer cette origine dans le fichier des pr�f�rences
demanderait cette ligne :
</simpara>
<programlisting>
Pin: release o=Debian
</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term>La ligne <literal/Label:/ </term>
<listitem><simpara>semble redondante. En g�n�ral, c'est
<literal/Debian/. Indiquer cette origine dans le fichier des pr�f�rences
demanderait cette ligne :
</simpara>
<programlisting>
Pin: release l=Debian
</programlisting>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>Tous les fichiers <filename>Packages</filename> et
<filename>Release</filename> r�cup�r�s dans des sources list�es par le
fichier &sources-list; sont conserv�s dans le r�pertoire
<filename>/var/lib/apt/lists</filename> ou dans le fichier sp�cifi� par la
variable <literal/Dir::State::Lists/ dans le fichier <filename/apt.conf/.
Par exemple, le fichier
<filename>debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release</filename> contient le fichier <filename>Release</filename> du site
<literal/debian.lcs.mit.edu/, architecture <literal/binary-i386/ et
composant <literal/contrib/ de la distribution <literal/unstable/.
</para>
</RefSect2>
<RefSect2><Title>Lignes facultatives dans le fichier des pr�f�rences</Title>
<para>Toute entr�e du fichier des pr�f�rences peut commencer par une ou
plusieurs lignes contenant le mot <literal/Explanation:/. Cela permet de
commenter l'entr�e.
</para>
<para>La ligne <literal/Pin-Priority:/ d'une entr�e est facultative. Si elle
n'existe pas, APT affecte une priorit� inf�rieure de 1 � la valeur sp�cifi�e
sur une ligne commen�ant par <literal/Pin-Priority: release .../.
</para>
</RefSect2>
</RefSect1>
<RefSect1><Title>Exemples</>
<RefSect2><Title>Comment suivre Stable ?</Title>
<para>Le fichier des pr�f�rences suivant affecte une priorit� plus haute que
la priorit� par d�faut (500) � tous les exemplaires appartenant � la
distribution <literal/stable/ et une priorit� prohibitivement basse � tous
les exemplaires appartenant � d'autres distributions <literal/Debian/.
<programlisting>
Package: *
Pin: release a=stable
Pin-Priority: 900
Explanation: Ne pas installer des exemplaires d'origine Debian
Explanation: sauf ceux de la distribution stable
Package: *
Pin: release o=Debian
Pin-Priority: -10
</programlisting>
</para>
<para>Avec le fichier des pr�f�rences ci-dessus et un fichier &sources-list;
ad�quat, les commandes suivantes utiliseront les versions les plus r�centes
de <literal/stable/ pour faire la mise � niveau :
<programlisting>
apt-get install <replaceable>paquet</replaceable>
apt-get upgrade
apt-get dist-upgrade
</programlisting>
</para>
<para>La commande suivante utilisera la version la plus r�cente de la
distribution <literal/testing/ pour mettre � niveau le paquet sp�cifi� ;
cependant les mises � niveau ult�rieures ne se feront pas automatiquement.
<programlisting>
apt-get install <replaceable>paquet</replaceable>/testing
</programlisting>
</RefSect2>
<RefSect2><Title>Comment suivre Testing ?</Title>
<para>Le fichier des pr�f�rences suivant affecte une priorit� haute aux
versions des paquets appartenant � la distribution <literal/testing/, une
priorit� moindre aux versions appartenant � la distribution <literal/unstable/
et une priorit� prohibitivement basse aux versions appartenant � d'autres
distributions <literal/Debian/.
<programlisting>
Package: *
Pin: release a=testing
Pin-Priority: 900
Package: *
Pin: release a=unstable
Pin-Priority: 800
Package: *
Pin: release o=Debian
Pin-Priority: -10
</programlisting>
</para>
<para>Avec le fichier des pr�f�rences ci-dessus, les commandes suivantes
utiliseront les versions les plus r�centes de <literal/testing/ pour faire
la mise � niveau :
<programlisting>
apt-get install <replaceable>paquet</replaceable>
apt-get upgrade
apt-get dist-upgrade
</programlisting>
</para>
<para>La commande suivante utilisera la version la plus r�cente de la
distribution <literal/unstable/ pour mettre � niveau le paquet sp�cifi� ;
Par la suite, <command>apt-get dist-upgrade</command> et les autres
commandes <emphasis/utiliseront/ les versions les plus r�centes de
<literal/unstable/ pour mettre � niveau le paquet.
<programlisting>
apt-get install <replaceable>paquet</replaceable>/unstable
</programlisting>
</para>
</RefSect2>
</RefSect1>
<RefSect1><Title>See Also</>
<para>
&apt-get; &apt-cache; &apt-conf; &sources-list;
</RefSect1>
&manbugs;
&manauthor;
&traducteur;
</refentry>
|