| 1 |
<!-- CVS revision of this document "$Revision: 1.15 $" -->
|
| 2 |
<!-- CVS revision of original english document "1.8" -->
|
| 3 |
<!--Line width ruler (ruler uses 78 characters) 34567890123456789012345-->
|
| 4 |
<!doctype debiandoc system>
|
| 5 |
<debiandoc>
|
| 6 |
<book>
|
| 7 |
|
| 8 |
<title>APT HOWTO (Obsolete Documentation)</title>
|
| 9 |
|
| 10 |
<author>
|
| 11 |
<name>Gustavo Noronha Silva</name> <email>kov@debian.org</email>
|
| 12 |
</author>
|
| 13 |
<author>
|
| 14 |
Traduction de Julien Louis
|
| 15 |
<email>leonptitlouis@ifrance.com</email>
|
| 16 |
</author>
|
| 17 |
<version>1.8.10.4 - mars 2005</version>
|
| 18 |
<!-- Original version : 1.32 -->
|
| 19 |
|
| 20 |
<abstract>
|
| 21 |
Ce document essaie de fournir à l'utilisateur une bonne compréhension du
|
| 22 |
fonctionnement de l'utilitaire Debian de gestion de paquets, <prgn>apt</prgn>.
|
| 23 |
Son but est de rendre la vie plus facile aux nouveaux utilisateurs Debian et
|
| 24 |
aider ceux qui veulent approfondir leur compréhension de l'administration de ce
|
| 25 |
système. Il a été créé pour le projet Debian afin d'aider à améliorer les
|
| 26 |
ressources disponibles pour l'utilisateur de cette distribution.
|
| 27 |
</abstract>
|
| 28 |
|
| 29 |
<copyright>
|
| 30 |
<copyrightsummary>
|
| 31 |
Copyright © 2001, 2002, 2003, 2004 Gustavo Noronha Silva
|
| 32 |
</copyrightsummary>
|
| 33 |
<p>
|
| 34 |
Ce manuel est libre, vous pouvez le redistribuer et/ou le modifier selon les
|
| 35 |
termes de la Licence Publique Générale GNU publiée par la Free Software
|
| 36 |
Foundation (version 2 ou bien toute autre version ultérieure choisie par vous).
|
| 37 |
</p>
|
| 38 |
|
| 39 |
<p>
|
| 40 |
Ce manuel est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE,
|
| 41 |
ni explicite ni implicite, y compris les garanties de commercialisation ou
|
| 42 |
d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique
|
| 43 |
Générale GNU pour plus de détails.
|
| 44 |
</p>
|
| 45 |
|
| 46 |
<p>
|
| 47 |
Une copie de la Licence Publique Générale est disponible dans la distribution
|
| 48 |
Debian GNU/Linux dans /usr/share/common-licenses/GPL ou sur Internet. Vous
|
| 49 |
pouvez aussi en obtenir une copie en écrivant à la Free Software Foundation, INC., 59
|
| 50 |
Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
| 51 |
</p>
|
| 52 |
</copyright>
|
| 53 |
|
| 54 |
<toc>
|
| 55 |
|
| 56 |
<chapt>Introduction
|
| 57 |
<p>
|
| 58 |
Au commencement, il y avait le .tar.gz. Les utilisateurs devaient compiler
|
| 59 |
chaque programme qu'ils voulaient utiliser sur leur système GNU/Linux. Quand
|
| 60 |
Debian fut créée, il a été estimé nécessaire que le système s'occupe aussi de la
|
| 61 |
gestion des paquets installés sur la machine. Le nom <prgn>dpkg</prgn> fut donné
|
| 62 |
à ce système. Ainsi, ce fut la première fois qu'un
|
| 63 |
« système de paquets » était inclus dans GNU/Linux, longtemps avant
|
| 64 |
que Red Hat ne décide de créer son système de « rpm ».
|
| 65 |
<p>
|
| 66 |
Un nouveau dilemme est rapidement survenu dans l'esprit des développeurs
|
| 67 |
GNU/Linux. Ils avaient besoin d'une solution rapide, pratique et efficace pour
|
| 68 |
installer les paquets qui gérerait automatiquement les dépendances et qui
|
| 69 |
prendrait en compte les fichiers de configuration des paquets lors de mises à
|
| 70 |
niveau. Ici encore, Debian a ouvert la voie et a donné naissance à
|
| 71 |
<prgn>apt</prgn>, <em>Advanced Packaging Tool</em>, qui depuis a été
|
| 72 |
porté par Conectiva pour l'utiliser avec les rpm et a été adopté par quelques
|
| 73 |
autres distributions.
|
| 74 |
<p>
|
| 75 |
Ce manuel ne cherche pas à documenter apt-rpm, le portage d'<prgn>apt</prgn> par
|
| 76 |
Conectiva, mais des « rustines » en ce sens seraient les bienvenues.
|
| 77 |
<p>
|
| 78 |
Ce manuel est basé sur la prochaine version de Debian <tt>Sarge</tt>
|
| 79 |
</chapt>
|
| 80 |
|
| 81 |
<chapt id="basico">Configuration de base
|
| 82 |
|
| 83 |
<sect id="sources.list">Le fichier /etc/apt/sources.list
|
| 84 |
<p>
|
| 85 |
Pour réaliser ses opérations, <prgn>apt</prgn> utilise un fichier qui liste les
|
| 86 |
« sources » d'où peuvent provenir les paquets. Ce fichier est
|
| 87 |
<file>/etc/apt/sources.list</file>.
|
| 88 |
<p>
|
| 89 |
Les entrées dans ce fichier suivent ce format :
|
| 90 |
|
| 91 |
<p>
|
| 92 |
<example>
|
| 93 |
deb http://host/debian distribution section1 section2 section3
|
| 94 |
deb-src http://host/debian distribution section1 section2 section3
|
| 95 |
</example>
|
| 96 |
|
| 97 |
<p>
|
| 98 |
Bien sûr, les entrées ci-dessus sont fictives et ne doivent pas être
|
| 99 |
utilisées. Le premier mot de chaque ligne, <tt>deb</tt> ou <tt>deb-src</tt>,
|
| 100 |
indique le type de l'archive : <tt>deb</tt> pour les paquets binaires,
|
| 101 |
ce sont les paquets pré-compilés que l'on utilise habituellement,
|
| 102 |
ou <tt>deb-src</tt> pour les paquets sources, qui sont les sources originales
|
| 103 |
du programme, plus les fichiers de contrôle Debian (<tt>.dsc</tt>) et
|
| 104 |
le <tt>diff.gz</tt> contenant les changements nécessaires pour
|
| 105 |
« debianiser » le programme.
|
| 106 |
<p>
|
| 107 |
Nous trouvons généralement les lignes suivantes dans le
|
| 108 |
<file>sources.list</file> Debian par défaut :
|
| 109 |
<p>
|
| 110 |
<example>
|
| 111 |
# See sources.list(5) for more information, especialy
|
| 112 |
# Remember that you can only use http, ftp or file URIs
|
| 113 |
# CDROMs are managed through the apt-cdrom tool.
|
| 114 |
deb http://http.us.debian.org/debian stable main contrib non-free
|
| 115 |
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
|
| 116 |
deb http://security.debian.org stable/updates main contrib non-free
|
| 117 |
|
| 118 |
# Uncomment if you want the apt-get source function to work
|
| 119 |
#deb-src http://http.us.debian.org/debian stable main contrib non-free
|
| 120 |
#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
|
| 121 |
</example>
|
| 122 |
|
| 123 |
<p>
|
| 124 |
Ce sont les lignes nécessaires à une installation Debian de base. La première
|
| 125 |
ligne <tt>deb</tt> pointe vers l'archive officielle, la seconde vers l'archive
|
| 126 |
non-US et la troisième vers l'archive des mises à jour de sécurité Debian.
|
| 127 |
<p>
|
| 128 |
Les deux dernières lignes sont commentées (avec un « # » devant),
|
| 129 |
<prgn>apt-get</prgn> les ignorera. Ce sont les lignes <tt>deb-src</tt>, elles
|
| 130 |
pointent vers les paquets source Debian. Si vous téléchargez souvent les sources
|
| 131 |
de programmes pour tester ou recompiler, décommentez-les.
|
| 132 |
<p>
|
| 133 |
Le fichier <file>/etc/apt/sources.list</file> peut contenir plusieurs types de
|
| 134 |
lignes. <prgn>apt</prgn> sait traiter les archives de type <tt>http</tt>,
|
| 135 |
<tt>ftp</tt>, <tt>file</tt> (les fichiers locaux, c'est-à-dire, un répertoire
|
| 136 |
contenant une image ISO9660 montée) et <tt>ssh</tt>.
|
| 137 |
|
| 138 |
</sect>
|
| 139 |
|
| 140 |
<sect id="dpkg-scanpackages">Comment utiliser apt localement ?
|
| 141 |
<p>
|
| 142 |
Parfois vous avez beaucoup de paquets .deb et vous aimeriez utiliser
|
| 143 |
<prgn>apt</prgn> pour les installer afin que les dépendances soient
|
| 144 |
automatiquement résolues.
|
| 145 |
<p>
|
| 146 |
Pour ce faire, créez un répertoire et ajoutez-y vos fichiers .deb. Par
|
| 147 |
exemple :
|
| 148 |
<p>
|
| 149 |
<example>
|
| 150 |
# mkdir /root/debs
|
| 151 |
</example>
|
| 152 |
<p>
|
| 153 |
Vous pouvez modifier directement l'ensemble des définitions dans le fichier
|
| 154 |
de contrôle du paquet en utilisant un fichier <tt>override</tt> dans votre
|
| 155 |
référentiel. À l'intérieur de ce fichier, vous pouvez vouloir définir
|
| 156 |
certaines options pour modifier celles incluses dans le paquet original. Un
|
| 157 |
tel fichier ressemble à ce qui suit :
|
| 158 |
<p>
|
| 159 |
<example>
|
| 160 |
paquet priorité section
|
| 161 |
</example>
|
| 162 |
<p>
|
| 163 |
paquet est le nom du paquet, priorité est faible, moyenne ou haute, et section
|
| 164 |
est la section à laquelle il appartient. Le nom du fichier importe peu, vous
|
| 165 |
devrez le passer après en argument à <prgn>dpkg-scanpackages</prgn>. Si vous ne
|
| 166 |
souhaitez pas écrire de fichier <tt>override</tt>, utilisez simplement
|
| 167 |
<file>/dev/null</file> lorsque vous appelez <prgn>dpkg-scanpackages</prgn>.
|
| 168 |
<p>
|
| 169 |
Toujours dans le répertoire /root, faites :
|
| 170 |
<p>
|
| 171 |
<example>
|
| 172 |
# dpkg-scanpackages debs <var>fichier</var> | gzip > debs/Packages.gz
|
| 173 |
</example>
|
| 174 |
<p>
|
| 175 |
Dans la ligne ci-dessus <var>fichier</var> est le fichier
|
| 176 |
« <tt>override</tt> », la commande produit un fichier
|
| 177 |
<file>Packages.gz</file> qui contient diverses informations sur les paquets
|
| 178 |
utilisées par <prgn>apt</prgn>. Pour utiliser les paquets, ajoutez enfin :
|
| 179 |
<p>
|
| 180 |
<example>
|
| 181 |
deb file:/root debs/
|
| 182 |
</example>
|
| 183 |
<p>
|
| 184 |
Ensuite, utilisez <prgn>apt</prgn> normalement. Vous pourriez aussi fabriquer un
|
| 185 |
dépôt de sources. Pour ce faire utilisez la même procédure, mais rappelez-vous
|
| 186 |
que vous avez besoin des fichiers <tt>.orig.tar.gz</tt>,<tt>.dsc</tt> et
|
| 187 |
<tt>.diff.gz</tt> dans le répertoire. De plus, vous devez utiliser
|
| 188 |
<tt>Sources.gz</tt> au lieu de <tt>Packages.gz</tt>. Le programme utilisé est
|
| 189 |
aussi différent. C'est <prgn>dpkg-scansources</prgn>. La ligne de commande
|
| 190 |
ressemblera à :
|
| 191 |
<p>
|
| 192 |
<example>
|
| 193 |
# dpkg-scansources debs | gzip > debs/Sources.gz
|
| 194 |
</example>
|
| 195 |
<p>
|
| 196 |
Remarquez que <prgn>dpkg-scansources</prgn> n'a pas besoin d'un fichier
|
| 197 |
<tt>override</tt>. La ligne correspondante du sources.list est :
|
| 198 |
<example>
|
| 199 |
deb-src file:/root debs/
|
| 200 |
</example>
|
| 201 |
</sect>
|
| 202 |
|
| 203 |
<sect id="netselect">Comment décider quel est le meilleur miroir pour le
|
| 204 |
fichier sources.list : netselect, netselect-apt ?
|
| 205 |
<p>
|
| 206 |
Un doute très fréquent, principalement parmi les nouveaux utilisateurs est :
|
| 207 |
« Quel miroir Debian à mettre dans le<tt>sources.list</tt> ? ».
|
| 208 |
Il y a plusieurs façons de décider. Les experts ont probablement un
|
| 209 |
script qui mesure le temps de réponse des principaux miroirs. Mais il y a un
|
| 210 |
programme qui fait ça pour nous : <strong>netselect</strong>.
|
| 211 |
<p>
|
| 212 |
Pour installer netselect, faites comme d'habitude :
|
| 213 |
<p>
|
| 214 |
<example>
|
| 215 |
# apt-get install netselect
|
| 216 |
</example>
|
| 217 |
<p>
|
| 218 |
En lançant <prgn>netselect</prgn> sans paramètre, l'aide est affichée. En le
|
| 219 |
lançant avec une liste de serveurs (miroirs) séparés par un espace, il retournera
|
| 220 |
un résultat et un des serveurs. Ce résultat prend en considération l'estimation
|
| 221 |
du temps de réponse et le nombre de sauts (les serveurs par lesquels une requête
|
| 222 |
réseau passera pour atteindre la destination) et il est inversement proportionnel
|
| 223 |
à la vitesse de téléchargement (donc le plus bas est le meilleur). Le serveur
|
| 224 |
retourné est celui qui a eu le plus petit score (la liste complète des résultats
|
| 225 |
peut être vue en ajoutant l'option -vv). Regardez cet exemple :
|
| 226 |
<p>
|
| 227 |
<example>
|
| 228 |
# netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br
|
| 229 |
365 ftp.debian.org.br
|
| 230 |
#
|
| 231 |
</example>
|
| 232 |
<p>
|
| 233 |
Cela signifie que, d'après les miroirs donnés en paramètre à
|
| 234 |
<prgn>netselect</prgn>, <tt>ftp.debian.org.br</tt> était le meilleur, avec un
|
| 235 |
résultat de 365. (Attention ! Comme cela a été fait de mon ordinateur et
|
| 236 |
que la topographie du réseau est très différente selon le point de contact,
|
| 237 |
cette valeur n'est pas forcément la bonne vitesse sur d'autres ordinateurs).
|
| 238 |
<p>
|
| 239 |
Maintenant, mettez seulement le miroir le plus rapide trouvé par
|
| 240 |
<prgn>netselect</prgn> dans le fichier <file>/etc/apt/sources.list</file> (voir
|
| 241 |
<ref id="sources.list">) et suivez les conseils dans <ref id="apt-get">.
|
| 242 |
<p>
|
| 243 |
<strong>Note :</strong> on peut toujours trouver la liste des miroirs
|
| 244 |
sur <url id="http://www.debian.org/mirror/mirrors_full"
|
| 245 |
name="http://www.debian.org/mirror/mirrors_full">.
|
| 246 |
<p>
|
| 247 |
À partir de la version 0.3.ds1, le paquet source <package>netselect</package> inclut
|
| 248 |
le paquet binaire <strong>netselect-apt</strong>, qui effectue la procédure ci-dessus
|
| 249 |
automatiquement. Entrez seulement la distribution en paramètre (celle par défaut
|
| 250 |
est <tt>stable</tt>) et le fichier <tt>sources.list</tt> sera créé avec les meilleurs
|
| 251 |
miroirs pour main et non-US et sera sauvegardé dans le répertoire courant.
|
| 252 |
L'exemple suivant crée un sources.list de la distribution <tt>stable</tt> :
|
| 253 |
<p>
|
| 254 |
<example>
|
| 255 |
# ls sources.list
|
| 256 |
ls: sources.list: File or directory not found
|
| 257 |
# netselect-apt stable
|
| 258 |
(...)
|
| 259 |
# ls -l sources.list
|
| 260 |
sources.list
|
| 261 |
#
|
| 262 |
</example>
|
| 263 |
<p>
|
| 264 |
<strong>Rappelez-vous :</strong> Le fichier <tt>sources.list</tt> est créé
|
| 265 |
dans le répertoire courant et doit être déplacé dans le répertoire
|
| 266 |
<tt>/etc/apt</tt>.
|
| 267 |
<p>
|
| 268 |
Ensuite, suivez les conseils dans <ref id="apt-get">.
|
| 269 |
</sect>
|
| 270 |
|
| 271 |
<sect id="cdrom">Ajouter un cédérom dans le fichier sources.list
|
| 272 |
<p>
|
| 273 |
Si vous voulez plutôt utiliser vos cédéroms pour installer vos paquets ou mettre
|
| 274 |
à jour votre système automatiquement avec <prgn>apt</prgn>, vous pouvez les mettre
|
| 275 |
dans votre <tt>sources.list</tt>. Pour le faire, vous pouvez utiliser le programme
|
| 276 |
<prgn>apt-cdrom</prgn> comme ceci :
|
| 277 |
<p>
|
| 278 |
<example>
|
| 279 |
# apt-cdrom add
|
| 280 |
</example>
|
| 281 |
<p>
|
| 282 |
avec le cédérom Debian dans le lecteur. Il montera le cédérom, et si c'est un cédérom
|
| 283 |
Debian valide, il regardera les informations des paquets sur le disque. Si la
|
| 284 |
configuration de votre cédérom est inhabituelle, vous pouvez aussi utiliser les
|
| 285 |
options suivantes :
|
| 286 |
|
| 287 |
<p>
|
| 288 |
<example>
|
| 289 |
-h - Aide du programme
|
| 290 |
-d directory - Point de montage du cédérom
|
| 291 |
-r - Renommer un cédérom reconnu
|
| 292 |
-m - Pas de montage
|
| 293 |
-f - Mode rapide, ne vérifie pas les fichiers paquet
|
| 294 |
-a - Mode de vérification minutieux
|
| 295 |
</example>
|
| 296 |
|
| 297 |
<p>
|
| 298 |
Par exemple :
|
| 299 |
|
| 300 |
<p>
|
| 301 |
<example>
|
| 302 |
# apt-cdrom -d /home/kov/moncdrom add
|
| 303 |
</example>
|
| 304 |
|
| 305 |
<p>
|
| 306 |
Vous pouvez aussi identifier un cédérom sans l'ajouter à votre
|
| 307 |
sources.list :
|
| 308 |
|
| 309 |
<p>
|
| 310 |
<example>
|
| 311 |
# apt-cdrom ident
|
| 312 |
</example>
|
| 313 |
|
| 314 |
<p>
|
| 315 |
Remarquez que ce programme fonctionne seulement si votre cédérom est correctement
|
| 316 |
configuré dans votre <file>/etc/fstab</file>.
|
| 317 |
</sect>
|
| 318 |
</chapt>
|
| 319 |
|
| 320 |
<chapt id="apt-get">Gestion des paquets
|
| 321 |
<sect id="update">Mise à jour de la liste des paquets disponibles.
|
| 322 |
<p>
|
| 323 |
Le système de paquets utilise sa propre base de données pour garder une trace
|
| 324 |
des paquets qui sont installés, de ceux qui ne sont pas installés et de ceux
|
| 325 |
qui peuvent être installés. Le programme <prgn>apt-get</prgn> utilise cette
|
| 326 |
base de données pour retrouver comment installer les paquets demandés par
|
| 327 |
l'utilisateur ainsi que pour retrouver les paquets supplémentaires nécessaires
|
| 328 |
afin qu'un paquet sélectionné fonctionne correctement.
|
| 329 |
<p>
|
| 330 |
Pour mettre à jour cette liste, vous pouvez utiliser la commande <prgn>apt-get
|
| 331 |
update</prgn>. Cette commande vérifie la liste des paquets trouvés dans les
|
| 332 |
archives dans <file>/etc/apt/sources.list</file> : voir <ref
|
| 333 |
id="sources.list"> pour plus d'informations sur ce fichier.
|
| 334 |
<p>
|
| 335 |
C'est une bonne idée d'exécuter cette commande de temps en temps pour vous
|
| 336 |
garder, vous et votre système, informés des possibilités de mise à jour des
|
| 337 |
paquets, particulièrement les mises à jour de sécurité.
|
| 338 |
</sect>
|
| 339 |
|
| 340 |
<sect id="install">Installation de paquets
|
| 341 |
<p>
|
| 342 |
Finalement, la procédure que vous attendiez tous ! Avec votre sources.list
|
| 343 |
prêt et votre liste de paquets disponibles à jour, tout ce que vous avez à faire
|
| 344 |
est de lancer <tt><prgn>apt-get</prgn></tt> pour obtenir le paquet que vous désirez
|
| 345 |
installer. Par exemple, vous pouvez lancer :
|
| 346 |
|
| 347 |
<p>
|
| 348 |
<example>
|
| 349 |
apt-get install xchat
|
| 350 |
</example>
|
| 351 |
|
| 352 |
<p>
|
| 353 |
<prgn>apt</prgn> cherchera dans sa base de données la version la plus récente de ce paquet et
|
| 354 |
le récupérera à partir de l'archive correspondante indiquée dans
|
| 355 |
<tt>sources.list</tt>. Dans le cas où ce paquet dépend d'autres — comme c'est
|
| 356 |
le cas ici — <prgn>apt</prgn> vérifiera les dépendances et installera les paquets
|
| 357 |
nécessaires. Par exemple :
|
| 358 |
|
| 359 |
<p>
|
| 360 |
<example>
|
| 361 |
# apt-get install nautilus
|
| 362 |
Reading Package Lists... Done
|
| 363 |
Building Dependency Tree... Done
|
| 364 |
The following extra packages will be installed:
|
| 365 |
bonobo libmedusa0 libnautilus0
|
| 366 |
The following NEW packages will be installed:
|
| 367 |
bonobo libmedusa0 libnautilus0 nautilus
|
| 368 |
0 packages upgraded, 4 newly installed, 0 to remove and 1 not upgraded.
|
| 369 |
Need to get 8329kB of archives. After unpacking 17.2MB will be used.
|
| 370 |
Do you want to continue? [Y/n]
|
| 371 |
</example>
|
| 372 |
|
| 373 |
<p>
|
| 374 |
Le paquet <package>nautilus</package> dépend des bibliothèques partagées citées,
|
| 375 |
et <prgn>apt</prgn> les mettra dans l'archive. Si vous aviez donné les noms de
|
| 376 |
ces bibliothèques sur la ligne de commande <tt><prgn>apt-get</prgn></tt>,
|
| 377 |
<prgn>apt</prgn> ne vous aurait pas demandé si vous vouliez continuer :
|
| 378 |
il aurait supposé que vous vouliez installer tous ces paquets.
|
| 379 |
<p>
|
| 380 |
Cela signifie que <prgn>apt</prgn> demande confirmation seulement quand il est nécessaire
|
| 381 |
d'installer des paquets qui n'étaient pas spécifiés sur la ligne de commande.
|
| 382 |
<p>
|
| 383 |
Les options suivantes d'<prgn>apt-get</prgn> peuvent être utiles :
|
| 384 |
|
| 385 |
<p>
|
| 386 |
<example>
|
| 387 |
-h Ce texte d'aide
|
| 388 |
-d télécharge seulement - N'installe PAS, ni ne décompresse les paquets
|
| 389 |
-f Essaie de continuer si la vérification de l'intégrité échoue
|
| 390 |
-s Pas d'action. Effectue seulement une simulation
|
| 391 |
-y Suppose une réponse affirmative à toutes les requêtes et n'interroge pas
|
| 392 |
-u Affiche une liste des paquets à mettre à jour
|
| 393 |
</example>
|
| 394 |
|
| 395 |
<p>
|
| 396 |
Plusieurs paquets peuvent être sélectionnés pour installation sur une seule
|
| 397 |
ligne. Les fichiers téléchargés sur le réseau sont placés dans le répertoire
|
| 398 |
<tt>/var/cache/apt/archives</tt> pour une installation ultérieure.
|
| 399 |
<p>
|
| 400 |
Vous pouvez indiquer les paquets à retirer sur la même ligne de commande.
|
| 401 |
Mettez seulement un « - » juste après le nom du paquet à enlever,
|
| 402 |
comme ceci :
|
| 403 |
|
| 404 |
<p>
|
| 405 |
<example>
|
| 406 |
# apt-get install nautilus gnome-panel-
|
| 407 |
Reading Package Lists... Done
|
| 408 |
Building Dependency Tree... Done
|
| 409 |
The following extra packages will be installed:
|
| 410 |
bonobo libmedusa0 libnautilus0
|
| 411 |
The following packages will be REMOVED:
|
| 412 |
gnome-applets gnome-panel gnome-panel-data gnome-session
|
| 413 |
The following NEW packages will be installed:
|
| 414 |
bonobo libmedusa0 libnautilus0 nautilus
|
| 415 |
0 packages upgraded, 4 newly installed, 4 to remove and 1 not upgraded.
|
| 416 |
Need to get 8329kB of archives. After unpacking 2594kB will be used.
|
| 417 |
Do you want to continue? [Y/n]
|
| 418 |
</example>
|
| 419 |
|
| 420 |
<p>
|
| 421 |
Voyez la section <ref id="remove"> pour plus de détails sur la suppression
|
| 422 |
de paquets.
|
| 423 |
<p>
|
| 424 |
Si vous endommagez d'une manière ou d'une autre un paquet installé, ou si vous
|
| 425 |
voulez simplement que les fichiers d'un paquet soient réinstallés avec la
|
| 426 |
nouvelle version disponible, vous pouvez utiliser l'option <tt>--reinstall</tt>
|
| 427 |
comme ça :
|
| 428 |
|
| 429 |
<p>
|
| 430 |
<example>
|
| 431 |
# apt-get --reinstall install gdm
|
| 432 |
Reading Package Lists... Done
|
| 433 |
Building Dependency Tree... Done
|
| 434 |
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 1 not
|
| 435 |
upgraded.
|
| 436 |
Need to get 0B/182kB of archives. After unpacking 0B will be used.
|
| 437 |
Do you want to continue? [Y/n]
|
| 438 |
</example>
|
| 439 |
</sect>
|
| 440 |
|
| 441 |
<sect id="remove">Suppression de paquets
|
| 442 |
<p>
|
| 443 |
Si vous ne voulez plus utiliser un paquet, vous pouvez le supprimer de votre
|
| 444 |
système en utilisant <prgn>apt</prgn>. Pour ce faire, tapez seulement <tt>apt-get remove
|
| 445 |
paquet</tt>. Par exemple :
|
| 446 |
|
| 447 |
<p>
|
| 448 |
<example>
|
| 449 |
# apt-get remove gnome-panel
|
| 450 |
Reading Package Lists... Done
|
| 451 |
Building Dependency Tree... Done
|
| 452 |
The following packages will be REMOVED:
|
| 453 |
gnome-applets gnome-panel gnome-panel-data gnome-session
|
| 454 |
0 packages upgraded, 0 newly installed, 4 to remove and 1 not upgraded.
|
| 455 |
Need to get 0B of archives. After unpacking 14.6MB will be freed.
|
| 456 |
Do you want to continue? [Y/n]
|
| 457 |
</example>
|
| 458 |
|
| 459 |
<p>
|
| 460 |
Comme vous pouvez le voir dans l'exemple ci-dessus, <prgn>apt</prgn> prend soin
|
| 461 |
de supprimer les paquets qui dépendent du paquet dont vous avez
|
| 462 |
demandé la suppression. Avec <prgn>apt</prgn>, il n'est pas possible de supprimer
|
| 463 |
un paquet sans supprimer aussi les paquets dépendant de celui-ci.
|
| 464 |
<p>
|
| 465 |
Exécuter <prgn>apt-get</prgn> comme ci-dessus entraînera la suppression des
|
| 466 |
paquets, mais leurs fichiers de configuration, s'il y en a, resteront intacts
|
| 467 |
sur le système. Pour une suppression complète du paquet, lancez :
|
| 468 |
|
| 469 |
<p>
|
| 470 |
<example>
|
| 471 |
# apt-get --purge remove gnome-panel
|
| 472 |
Reading Package Lists... Done
|
| 473 |
Building Dependency Tree... Done
|
| 474 |
The following packages will be REMOVED:
|
| 475 |
gnome-applets* gnome-panel* gnome-panel-data* gnome-session*
|
| 476 |
0 packages upgraded, 0 newly installed, 4 to remove and 1 not upgraded.
|
| 477 |
Need to get 0B of archives. After unpacking 14.6MB will be freed.
|
| 478 |
Do you want to continue? [Y/n]
|
| 479 |
</example>
|
| 480 |
|
| 481 |
<p>
|
| 482 |
Remarquez après les noms le signe « * ». Cela indique que les fichiers de
|
| 483 |
configuration vont aussi être supprimés.
|
| 484 |
<p>
|
| 485 |
Comme avec la méthode <tt>install</tt>, vous pouvez utiliser un
|
| 486 |
symbole avec <tt>remove</tt> pour inverser le sens d'un paquet en particulier.
|
| 487 |
Dans le cas de la suppression, si vous ajoutez un <tt>« + »</tt> juste
|
| 488 |
après le nom du paquet, le paquet sera installé au lieu d'être supprimé.
|
| 489 |
|
| 490 |
<p>
|
| 491 |
<example>
|
| 492 |
# apt-get --purge remove gnome-panel nautilus+
|
| 493 |
Reading Package Lists... Done
|
| 494 |
Building Dependency Tree... Done
|
| 495 |
The following extra packages will be installed:
|
| 496 |
bonobo libmedusa0 libnautilus0 nautilus
|
| 497 |
The following packages will be REMOVED:
|
| 498 |
gnome-applets* gnome-panel* gnome-panel-data* gnome-session*
|
| 499 |
The following NEW packages will be installed:
|
| 500 |
bonobo libmedusa0 libnautilus0 nautilus
|
| 501 |
0 packages upgraded, 4 newly installed, 4 to remove and 1 not upgraded.
|
| 502 |
Need to get 8329kB of archives. After unpacking 2594kB will be used.
|
| 503 |
Do you want to continue? [Y/n]
|
| 504 |
</example>
|
| 505 |
|
| 506 |
<p>
|
| 507 |
Notez que <prgn>apt-get</prgn> liste les paquets supplémentaires qui seront
|
| 508 |
installés (c'est-à-dire, les paquets dont l'installation est nécessaire au bon
|
| 509 |
fonctionnement du paquet dont l'installation a été demandée), ceux qui seront
|
| 510 |
supprimés, et ceux qui seront installés (toujours dans les paquets
|
| 511 |
supplémentaires).
|
| 512 |
</sect>
|
| 513 |
|
| 514 |
<sect id="upgrade">Mise à niveau des paquets
|
| 515 |
<p>
|
| 516 |
La mise à niveau de paquets est une vraie réussite du système
|
| 517 |
<prgn>apt</prgn>. Une simple commande suffit : <prgn>apt-get upgrade</prgn>.
|
| 518 |
Vous pouvez utilisez cette commande pour mettre à niveau les paquets d'une même
|
| 519 |
distribution, et aussi pour mettre à niveau vers une nouvelle distribution, bien
|
| 520 |
que la commande <prgn>apt-get dist-upgrade</prgn> soit préférée à cette
|
| 521 |
dernière ; voir <ref id="dist-upgrade"> pour plus de détails.
|
| 522 |
<p>
|
| 523 |
Il est utile d'exécuter cette commande avec l'option <tt>-u</tt>. Cette option
|
| 524 |
oblige <prgn>apt</prgn> à afficher la liste complète des paquets qui seront mis
|
| 525 |
à niveau. Sans elle, vous ferez vos mises à niveau en aveugle. <prgn>apt</prgn>
|
| 526 |
téléchargera les dernières version de chaque paquet et les installera dans le bon
|
| 527 |
ordre. C'est important de toujours lancer <prgn>apt-get update</prgn> avant de
|
| 528 |
l'essayer. Voir la section <ref id="update">. Observez cet exemple :
|
| 529 |
|
| 530 |
<p>
|
| 531 |
<example>
|
| 532 |
# apt-get -u upgrade
|
| 533 |
Reading Package Lists... Done
|
| 534 |
Building Dependency Tree... Done
|
| 535 |
The following packages have been kept back
|
| 536 |
cpp gcc lilo
|
| 537 |
The following packages will be upgraded
|
| 538 |
adduser ae apt autoconf debhelper dpkg-dev esound esound-common ftp indent
|
| 539 |
ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0 libesd0-dev
|
| 540 |
libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev liborbit0
|
| 541 |
libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit procps psmisc
|
| 542 |
29 packages upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
|
| 543 |
Need to get 5055B/5055kB of archives. After unpacking 1161kB will be used.
|
| 544 |
Do you want to continue? [Y/n]
|
| 545 |
</example>
|
| 546 |
|
| 547 |
<p>
|
| 548 |
Le processus est très simple. Notez que dans les premières lignes,
|
| 549 |
<prgn>apt-get</prgn> dit que certains paquets ont été <tt>laissés de côté</tt>
|
| 550 |
(NdT : « kept back »). Cela signifie qu'il y a de nouvelles
|
| 551 |
versions de ces paquets qui ne seront pas installées pour plusieurs raisons. Les
|
| 552 |
raisons possibles sont des dépendances cassées (un paquet dont il dépend n'a pas
|
| 553 |
de version disponible en téléchargement) ou de nouvelles dépendances (le paquet
|
| 554 |
dépend de nouveaux paquets depuis la dernière version).
|
| 555 |
<p>
|
| 556 |
Pour le premier cas, il n'y a pas de solution propre. Pour le second, il suffit
|
| 557 |
d'exécuter <prgn>apt-get install</prgn> sur le paquet en question il
|
| 558 |
téléchargera ainsi les dépendances. Une meilleure solution est d'utiliser
|
| 559 |
<tt>dist-upgrade</tt>. Voir la section <ref id="dist-upgrade">.
|
| 560 |
</sect>
|
| 561 |
|
| 562 |
<sect id="dist-upgrade">Mettre à niveau vers une nouvelle distribution
|
| 563 |
<p>
|
| 564 |
Cette caractéristique d'<prgn>apt</prgn> permet de mettre à niveau tout un
|
| 565 |
système Debian en une seule fois, soit par Internet ou soit par un nouveau
|
| 566 |
cédérom (commandé ou téléchargé en image ISO).
|
| 567 |
<p>
|
| 568 |
Elle est aussi utilisée quand des changements dans les dépendances des paquets
|
| 569 |
installés sont faits. Avec <prgn>apt-get upgrade</prgn>, ces paquets seraient
|
| 570 |
laissés de côté (NdT :<tt>kept back</tt>).
|
| 571 |
<p>
|
| 572 |
Par exemple, supposons que vous utilisiez la révision 0 de la version stable de
|
| 573 |
Debian et que vous achetiez un cédérom de la révision 3. Vous pouvez utiliser
|
| 574 |
<prgn>apt</prgn> pour mettre à niveau votre système avec ce nouveau cédérom. Pour
|
| 575 |
le faire, utilisez <prgn>apt-cdrom</prgn> (voir la section <ref id="cdrom">)
|
| 576 |
pour ajouter le cédérom à votre <file>/etc/apt/sources.list</file> et lancez
|
| 577 |
<tt><prgn>apt-get</prgn> dist-upgrade</tt>.
|
| 578 |
<p>
|
| 579 |
Il est important de noter que <prgn>apt</prgn> cherche toujours la version du
|
| 580 |
paquet la plus récente. Ainsi, si votre <file>/etc/apt/sources.list</file>
|
| 581 |
listait une archive qui a une version plus récente que la version sur le cédérom,
|
| 582 |
<prgn>apt</prgn> téléchargerait le paquet à partir de là.
|
| 583 |
<p>
|
| 584 |
Dans l'exemple de la section <ref id="upgrade">, nous avons vu que quelques
|
| 585 |
paquets avaient été <tt>laissés de côté</tt> (NdT « kept back »).
|
| 586 |
Nous allons maintenant résoudre ce problème par la méthode
|
| 587 |
<tt>dist-upgrade</tt> :
|
| 588 |
|
| 589 |
<p>
|
| 590 |
<example>
|
| 591 |
# apt-get -u dist-upgrade
|
| 592 |
Reading Package Lists... Done
|
| 593 |
Building Dependency Tree... Done
|
| 594 |
Calculating Upgrade... Done
|
| 595 |
The following NEW packages will be installed:
|
| 596 |
cpp-2.95 cron exim gcc-2.95 libident libopenldap-runtime libopenldap1
|
| 597 |
libpcre2 logrotate mailx
|
| 598 |
The following packages have been kept back
|
| 599 |
lilo
|
| 600 |
The following packages will be upgraded
|
| 601 |
adduser ae apt autoconf cpp debhelper dpkg-dev esound esound-common ftp gcc
|
| 602 |
indent ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0
|
| 603 |
libesd0-dev libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev
|
| 604 |
liborbit0 libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit
|
| 605 |
procps psmisc
|
| 606 |
31 packages upgraded, 10 newly installed, 0 to remove and 1 not upgraded.
|
| 607 |
Need to get 0B/7098kB of archives. After unpacking 3118kB will be used.
|
| 608 |
Do you want to continue? [Y/n]
|
| 609 |
</example>
|
| 610 |
|
| 611 |
<p>
|
| 612 |
Notez maintenant que le paquet va être mis à niveau et des nouveaux paquets
|
| 613 |
vont aussi être installés (les dépendances des paquets). Notez également que
|
| 614 |
lilo est toujours <tt>laissé de côté</tt>. Il a probablement un problème plus
|
| 615 |
important qu'une nouvelle dépendance. Nous pouvons le découvrir en lançant :
|
| 616 |
|
| 617 |
<p>
|
| 618 |
<example>
|
| 619 |
# apt-get -u install lilo
|
| 620 |
Reading Package Lists... Done
|
| 621 |
Building Dependency Tree... Done
|
| 622 |
The following extra packages will be installed:
|
| 623 |
cron debconf exim libident libopenldap-runtime libopenldap1 libpcre2
|
| 624 |
logrotate mailx
|
| 625 |
The following packages will be REMOVED:
|
| 626 |
debconf-tiny
|
| 627 |
The following NEW packages will be installed:
|
| 628 |
cron debconf exim libident libopenldap-runtime libopenldap1 libpcre2
|
| 629 |
logrotate mailx
|
| 630 |
The following packages will be upgraded
|
| 631 |
lilo
|
| 632 |
1 packages upgraded, 9 newly installed, 1 to remove and 31 not upgraded.
|
| 633 |
Need to get 225kB/1179kB of archives. After unpacking 2659kB will be used.
|
| 634 |
Do you want to continue? [Y/n]
|
| 635 |
</example>
|
| 636 |
|
| 637 |
<p>
|
| 638 |
Comme affiché ci-dessus, lilo a un nouveau conflit avec le paquet
|
| 639 |
<package>debconf-tiny</package>, ce qui signifie qu'il ne peut pas être installé
|
| 640 |
(ou mis à niveau) sans suppression de debconf-tiny.
|
| 641 |
<p>
|
| 642 |
Pour savoir ce qu'un paquet ajoute ou supprime, vous pouvez utiliser ceci :
|
| 643 |
|
| 644 |
<p>
|
| 645 |
<example>
|
| 646 |
# apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
|
| 647 |
Reading Package Lists... Done
|
| 648 |
Building Dependency Tree... Done
|
| 649 |
Calculating Upgrade... Starting
|
| 650 |
Starting 2
|
| 651 |
Investigating python1.5
|
| 652 |
Package python1.5 has broken dep on python1.5-base
|
| 653 |
Considering python1.5-base 0 as a solution to python1.5 0
|
| 654 |
Holding Back python1.5 rather than change python1.5-base
|
| 655 |
Investigating python1.5-dev
|
| 656 |
Package python1.5-dev has broken dep on python1.5
|
| 657 |
Considering python1.5 0 as a solution to python1.5-dev 0
|
| 658 |
Holding Back python1.5-dev rather than change python1.5
|
| 659 |
Try to Re-Instate python1.5-dev
|
| 660 |
Done
|
| 661 |
Done
|
| 662 |
The following packages have been kept back
|
| 663 |
gs python1.5-dev
|
| 664 |
0 packages upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
|
| 665 |
</example>
|
| 666 |
|
| 667 |
<p>
|
| 668 |
Cette fois, il est facile de remarquer que le paquet python1.5-dev ne peut pas
|
| 669 |
être installé à cause de dépendances non satisfaites : python1.5.
|
| 670 |
</sect>
|
| 671 |
|
| 672 |
<sect id="clean">Supprimer des paquets non utilisés : apt-get clean et autoclean
|
| 673 |
<p>
|
| 674 |
Lorsque vous installez un paquet, APT récupère les fichiers nécessaires depuis
|
| 675 |
les hôtes listés dans /etc/apt/sources.list, les stocke dans un référentiel
|
| 676 |
local (<file>/var/cache/apt/archives/</file>), et ensuite procède à
|
| 677 |
l'installation, voir <ref id="install">.
|
| 678 |
<p>
|
| 679 |
Le référentiel local peut grandir dans le temps et utiliser beaucoup d'espace
|
| 680 |
disque. Heureusement, APT fournit des outils pour gérer son référentiel
|
| 681 |
local : les méthodes <prgn>apt-get</prgn> <tt>clean</tt> et
|
| 682 |
<tt>autoclean</tt>.
|
| 683 |
<p>
|
| 684 |
<prgn>apt-get clean</prgn> supprime tout à part les fichiers verrou dans
|
| 685 |
<file>/var/cache/apt/archives/</file> et
|
| 686 |
<file>/var/cache/apt/archives/partial/</file>. Ainsi, si vous avez besoin de
|
| 687 |
réinstaller un paquet, APT devra le retélécharger.
|
| 688 |
<p>
|
| 689 |
<prgn>apt-get autoclean</prgn> supprime seulement les paquets qui ne peuvent
|
| 690 |
plus être téléchargés.
|
| 691 |
<p>
|
| 692 |
L'exemple suivant montre comment apt-get autoclean fonctionne :
|
| 693 |
|
| 694 |
<p>
|
| 695 |
<example>
|
| 696 |
# ls /var/cache/apt/archives/logrotate* /var/cache/apt/archives/gpm*
|
| 697 |
logrotate_3.5.9-7_i386.deb
|
| 698 |
logrotate_3.5.9-8_i386.deb
|
| 699 |
gpm_1.19.6-11_i386.deb
|
| 700 |
</example>
|
| 701 |
|
| 702 |
<p>
|
| 703 |
Il y a deux fichiers pour le paquet <package>logrotate</package> et un pour le
|
| 704 |
paquet <package>gpm</package> dans /var/cache/apt/archives.
|
| 705 |
|
| 706 |
<p>
|
| 707 |
<example>
|
| 708 |
# apt-show-versions -p logrotate
|
| 709 |
logrotate/stable uptodate 3.5.9-8
|
| 710 |
# apt-show-versions -p gpm
|
| 711 |
gpm/stable upgradeable from 1.19.6-11 to 1.19.6-12
|
| 712 |
</example>
|
| 713 |
|
| 714 |
<p>
|
| 715 |
<prgn>apt-show-versions</prgn> montre que
|
| 716 |
<file>logrotate_3.5.9-8_i386.deb</file> fournit la version à jour de
|
| 717 |
<package>logrotate</package>, donc <file>logrotate_3.5.9-7_i386.deb</file> est
|
| 718 |
inutile car une version plus récente du paquet peut être rapatriée.
|
| 719 |
|
| 720 |
<p>
|
| 721 |
<example>
|
| 722 |
# apt-get autoclean
|
| 723 |
Reading Package Lists... Done
|
| 724 |
Building Dependency Tree... Done
|
| 725 |
Del gpm 1.19.6-11 [145kB]
|
| 726 |
Del logrotate 3.5.9-7 [26.5kB]
|
| 727 |
</example>
|
| 728 |
|
| 729 |
<p>
|
| 730 |
Finalement, <tt>apt-get autoclean</tt> ne supprime que les anciens fichiers.
|
| 731 |
Pour plus d'informations sur apt-show-versions, voyez <ref id="apt-show-versions">.
|
| 732 |
</sect>
|
| 733 |
|
| 734 |
<sect id="dselect-upgrade">Utiliser apt avec dselect
|
| 735 |
<p>
|
| 736 |
<prgn>dselect</prgn> est un programme qui aide les utilisateurs à sélectionner
|
| 737 |
des paquets Debian pour les installer. Il est considéré comme un peu
|
| 738 |
difficile et plutôt rébarbatif mais avec de la pratique vous pouvez maîtriser son
|
| 739 |
interface console basée sur ncurses.
|
| 740 |
<p>
|
| 741 |
Un avantage de dselect est qu'il sait comment utiliser le fait que les paquets
|
| 742 |
Debian « recommandent » et « suggèrent » d'autres paquets
|
| 743 |
à installer. Pour utiliser ce programme, exécutez
|
| 744 |
<tt>« dselect »</tt> en tant que root. Choisissez « apt »
|
| 745 |
comme méthode d'accès. Ce n'est pas vraiment nécessaire, mais si vous n'utilisez
|
| 746 |
pas de cédérom et que vous voulez télécharger des paquets à partir d'Internet,
|
| 747 |
c'est la meilleure façon d'utiliser <prgn>dselect</prgn>.
|
| 748 |
<p>
|
| 749 |
Pour acquérir une meilleure compréhension de l'usage de <prgn>dselect</prgn>, lisez la
|
| 750 |
documentation de <prgn>dselect</prgn> sur la page Debian <url
|
| 751 |
id="http://www.debian.org/doc/ddp" name="http://www.debian.org/doc/ddp">.
|
| 752 |
<p>Après avoir fait votre sélection avec <prgn>dselect</prgn>, utilisez :
|
| 753 |
|
| 754 |
<p>
|
| 755 |
<example>
|
| 756 |
# apt-get -u dselect-upgrade
|
| 757 |
</example>
|
| 758 |
|
| 759 |
<p>
|
| 760 |
comme dans l'exemple ci-dessous :
|
| 761 |
|
| 762 |
<p>
|
| 763 |
<example>
|
| 764 |
# apt-get -u dselect-upgrade
|
| 765 |
Reading Package Lists... Done
|
| 766 |
Building Dependency Tree... Done
|
| 767 |
The following packages will be REMOVED:
|
| 768 |
lbxproxy
|
| 769 |
The following NEW packages will be installed:
|
| 770 |
bonobo console-tools-libs cpp-3.0 enscript expat fingerd gcc-3.0
|
| 771 |
gcc-3.0-base icepref klogd libdigest-md5-perl libfnlib0 libft-perl
|
| 772 |
libgc5-dev libgcc300 libhtml-clean-perl libltdl0-dev libsasl-modules
|
| 773 |
libstdc++3.0 metamail nethack proftpd-doc psfontmgr python-newt talk tidy
|
| 774 |
util-linux-locales vacation xbill xplanet-images
|
| 775 |
The following packages will be upgraded
|
| 776 |
debian-policy
|
| 777 |
1 packages upgraded, 30 newly installed, 1 to remove and 0 not upgraded.
|
| 778 |
Need to get 7140kB of archives. After unpacking 16.3MB will be used.
|
| 779 |
Do you want to continue? [Y/n]
|
| 780 |
</example>
|
| 781 |
|
| 782 |
<p>
|
| 783 |
Comparez avec ce que nous avons vu lorsque nous avons lancé <prgn>apt-get
|
| 784 |
dist-upgrade</prgn> sur le même système :
|
| 785 |
|
| 786 |
<p>
|
| 787 |
<example>
|
| 788 |
# apt-get -u dist-upgrade
|
| 789 |
Reading Package Lists... Done
|
| 790 |
Building Dependency Tree... Done
|
| 791 |
Calculating Upgrade... Done
|
| 792 |
The following packages will be upgraded
|
| 793 |
debian-policy
|
| 794 |
1 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
|
| 795 |
Need to get 421kB of archives. After unpacking 25.6kB will be freed.
|
| 796 |
Do you want to continue? [Y/n]
|
| 797 |
</example>
|
| 798 |
|
| 799 |
<p>
|
| 800 |
Notez que beaucoup de paquets ci-dessus vont être installés parce que les
|
| 801 |
autres paquets les « suggèrent » ou les « recommandent ».
|
| 802 |
D'autres seront installés ou supprimés (dans le cas de lbxproxy, par exemple)
|
| 803 |
grâce aux choix que nous avons faits lorsque nous naviguions dans la liste de
|
| 804 |
paquets de <prgn>dselect</prgn>. <Prgn>dselect</Prgn> peut être un outil très
|
| 805 |
puissant lorsqu'il est utilisé conjointement avec <prgn>apt</prgn>.
|
| 806 |
</sect>
|
| 807 |
|
| 808 |
<sect id="default-version">Comment garder un système mixte ?
|
| 809 |
<p>
|
| 810 |
L'utilisation d'une des versions de Debian en tant que distribution principale
|
| 811 |
et un ou plusieurs paquets d'une autre branche peut être parfois intéressante
|
| 812 |
pour certains utilisateurs.
|
| 813 |
<p>
|
| 814 |
Pour définir votre version principale de Debian, vous devriez modifier le
|
| 815 |
fichier <file>/etc/apt/apt.conf</file> afin qu'il contienne la ligne
|
| 816 |
suivante :
|
| 817 |
|
| 818 |
<p>
|
| 819 |
<example>
|
| 820 |
APT::Default-Release "<var>version</var>";
|
| 821 |
</example>
|
| 822 |
|
| 823 |
<p>
|
| 824 |
Où, <var>version</var> est la version de Debian que vous souhaitez utiliser
|
| 825 |
comme distribution principale. Les versions que vous pouvez utiliser sont
|
| 826 |
<tt>stable</tt>n <tt>testing</tt> et <tt>unstable</tt>. Pour installer des
|
| 827 |
paquets d'une autre version, vous devez utiliser APT de la manière
|
| 828 |
suivante :
|
| 829 |
<p>
|
| 830 |
<example>
|
| 831 |
# apt-get -t <var>distribution</var> install <var>paquet</var>
|
| 832 |
</example>
|
| 833 |
|
| 834 |
<p>
|
| 835 |
Pour que cela fonctionne, il est nécessaire que vous ayez au moins une source
|
| 836 |
APT de la distribution que vous voulez utiliser dans votre
|
| 837 |
<file>/etc/apt/sources.list</file>, les paquets doivent exister dans cette
|
| 838 |
source.
|
| 839 |
|
| 840 |
<p>
|
| 841 |
Vous pouvez aussi demander une version spécifique d'un paquet en utilisant la
|
| 842 |
syntaxe suivante :
|
| 843 |
|
| 844 |
<example>
|
| 845 |
# apt-get install <var>paquet</var>= version
|
| 846 |
</example>
|
| 847 |
|
| 848 |
Par exemple, la ligne ci-dessous installera la version <tt>2.2.4-1</tt> du
|
| 849 |
paquet <package>nautilus</package> :
|
| 850 |
|
| 851 |
<example>
|
| 852 |
# apt-get install nautilus=2.2.4-1
|
| 853 |
</example>
|
| 854 |
|
| 855 |
<p>
|
| 856 |
<em>IMPORTANT</em> : la distribution « unstable » de Debian est
|
| 857 |
la version où les nouvelles versions des paquets Debian sont d'abord déposées.
|
| 858 |
Cette distribution voit tous les changements des paquets, petits et plus
|
| 859 |
importants qui affectent beaucoup de paquets ou tout le système. Pour cette
|
| 860 |
raison, cette version <em>ne</em> devrait <em>pas</em> être utilisée par des
|
| 861 |
utilisateurs non expérimentés ni par ceux qui ont besoin de stabilité.
|
| 862 |
<p>
|
| 863 |
La distribution « testing » n'est pas nécessairement meilleure que
|
| 864 |
« unstable » car elle ne reçoit pas rapidement les mises à jour
|
| 865 |
de sécurité. Pour un serveur ou un système en
|
| 866 |
production, préférez toujours la distribution stable.
|
| 867 |
</sect>
|
| 868 |
|
| 869 |
<sect id="apt-show-versions">Comment mettre à niveau un paquet d'une
|
| 870 |
distribution Debian spécifique ?
|
| 871 |
<p>
|
| 872 |
Pour les utilisateurs de distribution mixte, <prgn>apt-show-versions</prgn>
|
| 873 |
est un moyen sûr pour mettre à niveau leur système, en contrôlant la part de
|
| 874 |
la distribution la moins stable qu'ils veulent. Pour l'instant, il est
|
| 875 |
possible de mettre à niveau seulement vos paquets unstable en exécutant après
|
| 876 |
avoir installé le paquet <package>apt-show-versions</package> :
|
| 877 |
<p>
|
| 878 |
<example>
|
| 879 |
# apt-get install `apt-show-versions -u -b | grep unstable | cut -d ' ' -f 1`
|
| 880 |
</example>
|
| 881 |
</sect>
|
| 882 |
|
| 883 |
<sect id="pin">Comment garder des versions spécifiques de paquets installés
|
| 884 |
(complexe)
|
| 885 |
<p>
|
| 886 |
Vous avez sûrement eu l'occasion de modifier quelque chose dans un paquet et
|
| 887 |
vous n'avez pas eu le temps ou l'envie de les transférer dans une nouvelle
|
| 888 |
version du programme. Ou, par exemple, vous venez juste de passer à la
|
| 889 |
distribution 3.0 de Debian, mais vous voulez continuer avec la version 2.2
|
| 890 |
pour certains paquets. Vous pouvez « épingler » la version que vous
|
| 891 |
avez installée de manière à ce qu'elle ne soit pas mise à niveau.
|
| 892 |
<p>
|
| 893 |
Utiliser cette fonctionnalité est simple. Vous avez seulement besoin de modifier
|
| 894 |
le fichier <file>/etc/apt/preferences</file>.
|
| 895 |
<p>
|
| 896 |
Le format est simple :
|
| 897 |
<p>
|
| 898 |
<example>
|
| 899 |
Package: <package>
|
| 900 |
Pin: <pin definition>
|
| 901 |
Pin-Priority: <pin's priority>
|
| 902 |
</example>
|
| 903 |
<p>
|
| 904 |
Toutes les entrées doivent être séparées par une ligne vide. Par exemple,
|
| 905 |
pour garder le paquet <package>sylpheed</package> que j'ai modifié
|
| 906 |
pour utiliser « reply-to-list » dans la version 0.4.99, j'ai
|
| 907 |
ajouté :
|
| 908 |
<p>
|
| 909 |
<example>
|
| 910 |
Package: sylpheed
|
| 911 |
Pin: version 0.4.99*
|
| 912 |
</example>
|
| 913 |
<p>
|
| 914 |
Notez que j'utilise un <tt>*</tt> (astérisque). C'est un
|
| 915 |
« joker » ; cela signifie que je veux que cet
|
| 916 |
« épinglage » soit valable pour toutes les versions commençant
|
| 917 |
par 0.4.99. C'est parce que Debian donne un numéro de révision à ses paquets
|
| 918 |
et je ne veux pas éviter l'installation de ces révisions. Et, par exemple, les
|
| 919 |
versions 0.4.99-1 et 0.4.99-10 seront installées dès qu'elles seront disponibles.
|
| 920 |
Notez que si vous avez modifié le paquet, vous ne voudrez pas procéder ainsi.
|
| 921 |
<p>
|
| 922 |
La priorité de l'épinglage aide à déterminer si un paquet correspondant aux
|
| 923 |
lignes « Packages: » et « Pin: » sera installé, plus la
|
| 924 |
priorité d'un paquet est grande, plus il est probable que le paquet
|
| 925 |
correspondant sera installé. Si vous souhaitez plus de détails, vous pouvez lire
|
| 926 |
<manref name="apt_preferences" section="7">, mais quelques exemples
|
| 927 |
devraient vous donner quelques idées de base. Les exemples suivant décrivent les effets du
|
| 928 |
positionnement du champ de priorité à différentes valeurs dans l'exemple sur
|
| 929 |
sylpheed ci-dessus.
|
| 930 |
<p>
|
| 931 |
<taglist>
|
| 932 |
<tag>1001</tag>
|
| 933 |
<item>
|
| 934 |
La version 0.4.99 de sylpheed ne sera jamais remplacée par apt. Si elle est
|
| 935 |
disponible, apt installera la version 0.4.99 même s'il doit remplacer un paquet
|
| 936 |
avec une version supérieure. Seuls les paquets avec une priorité supérieure
|
| 937 |
à 1000 peuvent remplacer un paquet existant par une version inférieure.
|
| 938 |
</item>
|
| 939 |
<tag>1000</tag>
|
| 940 |
<item>
|
| 941 |
L'effet est le même qu'avec une priorité de 1001, à l'exception qu'apt refusera
|
| 942 |
d'installer la version 0.4.99 si une autre version est installée.
|
| 943 |
</item>
|
| 944 |
<tag>990</tag>
|
| 945 |
<item>
|
| 946 |
La version 0.4.99 sera remplacée seulement si une version supérieure est
|
| 947 |
disponible dans la version de la distribution « préférée » en utilisant
|
| 948 |
la variable <var>APT::Default-Release</var> (voir <ref id="default-version">
|
| 949 |
ci-dessus).
|
| 950 |
</item>
|
| 951 |
<tag>500</tag>
|
| 952 |
<item>
|
| 953 |
Toute version supérieure à 0.4.99 disponible dans n'importe quelle version de la
|
| 954 |
distribution sera préférée à la version 0.4.99, mais la version 0.4.99 sera
|
| 955 |
toujours préférée à une version moins élevée.
|
| 956 |
</item>
|
| 957 |
<tag>100</tag>
|
| 958 |
<item>
|
| 959 |
Toute version de sylpheed disponible dans n'importe quelle version de la
|
| 960 |
distribution sera préférée à la version 0.4.99, comme toute version supérieure
|
| 961 |
de sylpheed installée ; la version 0.4.99 sera donc installée seulement si
|
| 962 |
aucune version n'est déjà installée. C'est la priorité des paquets installés.
|
| 963 |
</item>
|
| 964 |
<tag>-1</tag>
|
| 965 |
<item>
|
| 966 |
Les priorités négatives sont aussi permises et empêchent la version 0.4.99
|
| 967 |
d'être installée.
|
| 968 |
</item>
|
| 969 |
</taglist>
|
| 970 |
Un épinglage peut être relatif à <tt>la version</tt>, <tt>la distribution</tt>
|
| 971 |
ou <tt>l'origine</tt> d'un paquet.
|
| 972 |
<p>
|
| 973 |
Pour épingler une <tt>version</tt>, nous avons vu qu'on pouvait utiliser
|
| 974 |
les numéros de version de manière littérale aussi bien que les jokers pour
|
| 975 |
spécifier plusieurs versions en une fois.
|
| 976 |
<!-- Qu'est-ce qui est disponible ? les shells standards globs(?) ? ?*[] ou plus
|
| 977 |
? -->
|
| 978 |
<p>
|
| 979 |
L'option <tt>release</tt> dépend du fichier Release d'un référentiel
|
| 980 |
d'<prgn>apt</prgn> ou d'un cédérom. Cette option peut être sans intérêt si vous
|
| 981 |
utilisez des référentiels de paquets qui ne contiennent pas ce fichier. Vous
|
| 982 |
pouvez voir le contenu de ce fichier Release dans <tt>/var/lib/apt/lists</tt>.
|
| 983 |
Les paramètres de la distribution sont :
|
| 984 |
<tt>a</tt> (archive), <tt>c</tt> (composants), <tt>v</tt> (version), <tt>o</tt>
|
| 985 |
(origine) et <tt>l</tt> (label).
|
| 986 |
<p>
|
| 987 |
Un exemple :
|
| 988 |
<p>
|
| 989 |
<example>
|
| 990 |
Package: *
|
| 991 |
Pin: release v=2.2*,a=stable,c=main,o=Debian,l=Debian
|
| 992 |
Pin-Priority: 1001
|
| 993 |
</example>
|
| 994 |
<p>
|
| 995 |
Dans cet exemple, nous avons choisi les versions Debian 2.2* (qui peuvent être
|
| 996 |
2.2r2, 2.2r3 — cela satisfait les distributions qui
|
| 997 |
incluent les correctifs de sécurité et d'autres mises à jour très importantes), le
|
| 998 |
référentiel <tt>stable</tt>, la section <tt>main</tt> (opposée à <tt>contrib</tt>
|
| 999 |
ou <tt>non-free</tt>) et l'origine et le label Debian. L'origine (o=) définit
|
| 1000 |
qui a produit ce fichier Release, le label (l=) définit le nom de la
|
| 1001 |
distribution : Debian pour Debian elle-même et Progeny pour Progeny, par
|
| 1002 |
exemple. Un simple fichier Release :
|
| 1003 |
<p>
|
| 1004 |
<example>
|
| 1005 |
$ cat /var/lib/apt/lists/ftp.debian.org.br_debian_dists_potato_main_binary-i386_Release
|
| 1006 |
Archive: stable
|
| 1007 |
Version: 2.2r3
|
| 1008 |
Component: main
|
| 1009 |
Origin: Debian
|
| 1010 |
Label: Debian
|
| 1011 |
Architecture: i386
|
| 1012 |
</example>
|
| 1013 |
</sect>
|
| 1014 |
</chapt>
|
| 1015 |
|
| 1016 |
<chapt id="helpers">Aides très utiles
|
| 1017 |
<sect id="equivs">Comment installer un paquet localement : equivs
|
| 1018 |
<p>
|
| 1019 |
Parfois, des personnes veulent utiliser une version spécifique d'un programme
|
| 1020 |
dont est disponible seulement le code source, sans paquet Debian. Mais le système
|
| 1021 |
de paquets peut être perturbé quand vous le faites. Supposons que vous voulez
|
| 1022 |
compiler une nouvelle version de votre serveur de courriels. Tout est bien, mais
|
| 1023 |
beaucoup de paquets dépendent d'un MTA (« Mail Transport Agent »)
|
| 1024 |
dans Debian. Parce que vous avez installé quelque chose que vous avez compilé
|
| 1025 |
vous-même, le système de paquet ne connaît rien sur lui.
|
| 1026 |
<p>
|
| 1027 |
C'est là que <package>equivs</package> entre en scène. Pour l'utiliser,
|
| 1028 |
installez le paquet du même nom. <package>Equivs</package> crée un paquet vide
|
| 1029 |
capable de réaliser toutes les dépendances, en faisant croire au système de
|
| 1030 |
paquets que les dépendances sont satisfaites.
|
| 1031 |
<p>
|
| 1032 |
Avant que nous ne commencions, il est bon de vous rappeler qu'il y a d'autres
|
| 1033 |
méthodes plus sûres pour compiler un programme déjà empaqueté pour Debian avec
|
| 1034 |
différentes options, et l'on ne devrait pas utiliser equivs pour
|
| 1035 |
remplacer les dépendances quand on ne sait pas ce que l'on fait. Voir la
|
| 1036 |
section <ref id="sourcehandling"> pour plus d'informations.
|
| 1037 |
<p>
|
| 1038 |
Continuons avec l'exemple du MTA, vous venez juste d'installer votre
|
| 1039 |
<package>postfix</package> nouvellement compilé et vous continuez avec
|
| 1040 |
l'installation de <package>mutt</package>. Tout à coup vous découvrez que
|
| 1041 |
<package>mutt</package> veut installer un autre MTA. Mais vous avez déjà le
|
| 1042 |
vôtre.
|
| 1043 |
<p>
|
| 1044 |
Allez dans un répertoire (<file>/tmp</file>, par exemple) et lancez :
|
| 1045 |
|
| 1046 |
<p>
|
| 1047 |
<example>
|
| 1048 |
# equivs-control <var>nom</var>
|
| 1049 |
</example>
|
| 1050 |
|
| 1051 |
<p>
|
| 1052 |
Remplacez <var>nom</var> par le nom du fichier de contrôle que vous voulez
|
| 1053 |
créer. Le fichier sera créé comme suit :
|
| 1054 |
|
| 1055 |
<p>
|
| 1056 |
<example>
|
| 1057 |
Section: misc
|
| 1058 |
Priority: optional
|
| 1059 |
Standards-Version: 3.0.1
|
| 1060 |
|
| 1061 |
Package: <entrer le nom du paquet par défaut equivs-dummy>
|
| 1062 |
Version: <entrer ici la version par défaut 1.0>
|
| 1063 |
Maintainer: <votre nom et votre adresse mail par défaut nom d'utilisateur>
|
| 1064 |
Pre-Depends: <paquets>
|
| 1065 |
Depends: <paquets>
|
| 1066 |
Recommends: <paquets>
|
| 1067 |
Suggests: <paquet>
|
| 1068 |
Provides: <paquet (virtuel)>
|
| 1069 |
Architecture: all
|
| 1070 |
Copyright: <fichier copyright par défaut GPL2>
|
| 1071 |
Changelog: <fichier changelog par défaut un changelog générique>
|
| 1072 |
Readme: <fichier README.Debian par défaut un générique>
|
| 1073 |
Extra-Files: <fichiers supplémentaires pour le répertoire doc, séparés par des virgules>
|
| 1074 |
Description: <description courte par défaut quelques mots judicieux>
|
| 1075 |
description longue et informations
|
| 1076 |
.
|
| 1077 |
second paragraphe
|
| 1078 |
</example>
|
| 1079 |
|
| 1080 |
<p>
|
| 1081 |
Nous avons juste besoin de modifier cela pour faire ce que nous voulons.
|
| 1082 |
Examinons le format des champs et leurs descriptions. Il n'y a pas besoin ici
|
| 1083 |
de tout expliquer, faisons ce qui est nécessaire :
|
| 1084 |
|
| 1085 |
<p>
|
| 1086 |
<example>
|
| 1087 |
Section: misc
|
| 1088 |
Priority: optional
|
| 1089 |
Standards-Version: 3.0.1
|
| 1090 |
|
| 1091 |
Package: mta-local
|
| 1092 |
Provides: mail-transport-agent
|
| 1093 |
</example>
|
| 1094 |
|
| 1095 |
<p>
|
| 1096 |
Oui, c'est tout. <package>mutt</package> dépend de
|
| 1097 |
<package>mail-transport-agent</package>, c'est un paquet virtuel fourni par
|
| 1098 |
tous les MTA, je peux simplement nommer le paquet
|
| 1099 |
<package>mail-transport-agent</package>, mais je préfère utiliser le schéma du
|
| 1100 |
paquet virtuel, en utilisant Provides.
|
| 1101 |
<p>
|
| 1102 |
Maintenant vous avez seulement besoin de construire le paquet :
|
| 1103 |
|
| 1104 |
<p>
|
| 1105 |
<example>
|
| 1106 |
# equivs-build <var>nom</var>
|
| 1107 |
dh_testdir
|
| 1108 |
touch build-stamp
|
| 1109 |
dh_testdir
|
| 1110 |
dh_testroot
|
| 1111 |
dh_clean -k
|
| 1112 |
# Ajoutez ici les commandes pour installer le paquet dans debian/tmp.
|
| 1113 |
touch install-stamp
|
| 1114 |
dh_testdir
|
| 1115 |
dh_testroot
|
| 1116 |
dh_installdocs
|
| 1117 |
dh_installchangelogs
|
| 1118 |
dh_compress
|
| 1119 |
dh_fixperms
|
| 1120 |
dh_installdeb
|
| 1121 |
dh_gencontrol
|
| 1122 |
dh_md5sums
|
| 1123 |
dh_builddeb
|
| 1124 |
dpkg-deb: building package `<var>nom</var>' in
|
| 1125 |
`../<var>nom</var>_1.0_all.deb'.
|
| 1126 |
|
| 1127 |
The package has been created.
|
| 1128 |
Attention, the package has been created in the current directory,
|
| 1129 |
</example>
|
| 1130 |
|
| 1131 |
<p>
|
| 1132 |
Et installer le <file>.deb</file> résultant.
|
| 1133 |
<p>
|
| 1134 |
Comme vous pouvez le voir, il y a plusieurs utilisations d'<prgn>equivs</prgn>.
|
| 1135 |
L'une d'entre elles peut éventuellement créer un paquet <tt>mes-favoris</tt>, qui
|
| 1136 |
dépend des programmes que vous installez habituellement, par exemple. Laisser aller
|
| 1137 |
simplement votre imagination, mais soyez prudent.
|
| 1138 |
<p>
|
| 1139 |
Il est important de noter qu'il y a des exemples de fichiers contrôle dans
|
| 1140 |
<file>/usr/share/doc/equivs/examples</file>. Allez-y jeter un oeil.
|
| 1141 |
</sect>
|
| 1142 |
|
| 1143 |
<sect id="localepurge"> Suppression des fichiers de locale inutiles : localepurge
|
| 1144 |
<p>
|
| 1145 |
Beaucoup d'utilisateurs Debian utilisent une seule locale. Par exemple, un
|
| 1146 |
utilisateur brésilien utilise, généralement, la locale <tt>pt_BR</tt> tout le
|
| 1147 |
temps et ne se soucie pas de l'<tt>es</tt>.
|
| 1148 |
<p>
|
| 1149 |
<package>localepurge</package> est un outil très utile pour ces utilisateurs.
|
| 1150 |
Vous pouvez libérer beaucoup d'espace en ayant seulement la locale que vous
|
| 1151 |
utilisez. Taper simplement <tt>apt-get install localepurge</tt>.
|
| 1152 |
<p>
|
| 1153 |
C'est très simple à configurer, les questions de debconf guident
|
| 1154 |
l'utilisateur dans une configuration pas-à-pas. Soyez très attentif à la
|
| 1155 |
réponse de la première question, une mauvaise réponse peut supprimer tous les
|
| 1156 |
fichiers de locale, y compris ceux que vous utilisez. Le seul moyen de récupérer
|
| 1157 |
ces fichiers est de réinstaller tous les paquets qui les
|
| 1158 |
fournissent.
|
| 1159 |
</sect>
|
| 1160 |
|
| 1161 |
<sect id="helper-show-versions">Comment savoir quels paquets peuvent être mis à
|
| 1162 |
niveau
|
| 1163 |
<p>
|
| 1164 |
<prgn>apt-show-versions</prgn> est un programme qui affiche quels paquets du
|
| 1165 |
système peuvent être mis à jour et diverses informations utiles. l'option
|
| 1166 |
<tt>-u</tt> affiche une liste des paquets pouvant être mis à niveau :
|
| 1167 |
|
| 1168 |
<p>
|
| 1169 |
<example>
|
| 1170 |
$ apt-show-versions -u
|
| 1171 |
libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7
|
| 1172 |
libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7
|
| 1173 |
</example>
|
| 1174 |
</sect>
|
| 1175 |
</chapt>
|
| 1176 |
|
| 1177 |
<chapt id="search">Avoir des informations sur les paquets
|
| 1178 |
<p>
|
| 1179 |
Il y a quelques interfaces pour le système <prgn>apt</prgn> qui facilitent
|
| 1180 |
indubitablement l'obtention d'une liste de paquets qui sont disponibles pour
|
| 1181 |
l'installation ou qui sont déjà installés, de même que pour rechercher
|
| 1182 |
la section dans laquelle se trouve un paquet, sa priorité, sa description, etc.
|
| 1183 |
<p>
|
| 1184 |
Mais... notre but ici est d'apprendre comment utiliser le vrai <prgn>apt</prgn>.
|
| 1185 |
Donc comment pouvez-vous retrouver le nom d'un paquet que vous voulez
|
| 1186 |
installer ?
|
| 1187 |
<p>
|
| 1188 |
Nous avons un bon nombre de recours pour cette tâche. Nous commencerons avec
|
| 1189 |
<tt>apt-cache</tt>. Ce programme est utilisé par le système <prgn>apt</prgn>
|
| 1190 |
pour le maintien de sa base de données. Nous jetterons un bref coup d'oeil à
|
| 1191 |
ses applications les plus pratiques.
|
| 1192 |
|
| 1193 |
<sect id="cache">Recherche de noms de paquets
|
| 1194 |
<p>
|
| 1195 |
Supposons, par exemple, que vous voulez vous rappeler les bons vieux jours de
|
| 1196 |
l'Atari 2600. Vous voulez utiliser <prgn>apt</prgn> pour installer un émulateur
|
| 1197 |
Atari, puis télécharger quelques jeux. Vous pouvez faire :
|
| 1198 |
|
| 1199 |
<p>
|
| 1200 |
<example>
|
| 1201 |
# apt-cache search atari
|
| 1202 |
atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
|
| 1203 |
circuslinux - The clowns are trying to pop balloons to score points!
|
| 1204 |
madbomber - A Kaboom! clone
|
| 1205 |
tcs - Character set translator.
|
| 1206 |
atari800 - Atari emulator for svgalib/X/curses
|
| 1207 |
stella - Atari 2600 Emulator for X windows
|
| 1208 |
xmess-x - X binaries for Multi-Emulator Super System
|
| 1209 |
</example>
|
| 1210 |
|
| 1211 |
<p>
|
| 1212 |
Nous trouvons différents paquets relatifs à ce que nous cherchons, accompagnés
|
| 1213 |
d'une brève description. Pour avoir des informations sur un paquet
|
| 1214 |
spécifique, je peux alors utiliser :
|
| 1215 |
|
| 1216 |
<p>
|
| 1217 |
<example>
|
| 1218 |
# apt-cache show stella
|
| 1219 |
Package: stella
|
| 1220 |
Priority: extra
|
| 1221 |
Section: non-free/otherosfs
|
| 1222 |
Installed-Size: 830
|
| 1223 |
Maintainer: Tom Lear <tom@trap.mtview.ca.us>
|
| 1224 |
Architecture: i386
|
| 1225 |
Version: 1.1-2
|
| 1226 |
Depends: libc6 (>= 2.1), libstdc++2.10, xlib6g (>= 3.3.5-1)
|
| 1227 |
Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
|
| 1228 |
Size: 483430
|
| 1229 |
MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
|
| 1230 |
Description: Atari 2600 Emulator for X windows
|
| 1231 |
Stella is a portable emulator of the old Atari 2600 video-game console
|
| 1232 |
written in C++. You can play most Atari 2600 games with it. The latest
|
| 1233 |
news, code and binaries for Stella can be found at:
|
| 1234 |
http://www4.ncsu.edu/~bwmott/2600
|
| 1235 |
</example>
|
| 1236 |
|
| 1237 |
<p>
|
| 1238 |
Depuis cette sortie vous avez plein de détails sur le paquet que vous voulez (ou
|
| 1239 |
ne voulez pas) installer, accompagnés de la description complète du paquet.
|
| 1240 |
Si le paquet est déjà installé sur votre système et qu'il y a une nouvelle
|
| 1241 |
version, vous verrez les informations des deux versions. Par exemple :
|
| 1242 |
|
| 1243 |
<p>
|
| 1244 |
<example>
|
| 1245 |
[root]@[/] # apt-cache show lilo
|
| 1246 |
Package: lilo
|
| 1247 |
Priority: important
|
| 1248 |
Section: base
|
| 1249 |
Installed-Size: 271
|
| 1250 |
Maintainer: Russell Coker <russell@coker.com.au>
|
| 1251 |
Architecture: i386
|
| 1252 |
Version: 1:21.7-3
|
| 1253 |
Depends: libc6 (>= 2.2.1-2), debconf (>=0.2.26), logrotate
|
| 1254 |
Suggests: lilo-doc
|
| 1255 |
Conflicts: manpages (<<1.29-3)
|
| 1256 |
Filename: pool/main/l/lilo/lilo_21.7-3_i386.deb
|
| 1257 |
Size: 143052
|
| 1258 |
MD5sum: 63fe29b5317fe34ed8ec3ae955f8270e
|
| 1259 |
Description: LInux LOader - The Classic OS loader can load Linux and others
|
| 1260 |
This Package contains lilo (the installer) and boot-record-images to
|
| 1261 |
install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
|
| 1262 |
.
|
| 1263 |
You can use Lilo to manage your Master Boot Record (with a simple text
|
| 1264 |
screen)
|
| 1265 |
or call Lilo from other Boot-Loaders to jump-start the Linux kernel.
|
| 1266 |
|
| 1267 |
Package: lilo
|
| 1268 |
Status: install ok installed
|
| 1269 |
Priority: important
|
| 1270 |
Section: base
|
| 1271 |
Installed-Size: 190
|
| 1272 |
Maintainer: Vincent Renardias <vincent@debian.org>
|
| 1273 |
Version: 1:21.4.3-2
|
| 1274 |
Depends: libc6 (>= 2.1.2)
|
| 1275 |
Recommends: mbr
|
| 1276 |
Suggests: lilo-doc
|
| 1277 |
Description: LInux LOader - The Classic OS loader can load Linux and others
|
| 1278 |
This Package contains lilo (the installer) and boot-record-images to
|
| 1279 |
install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
|
| 1280 |
.
|
| 1281 |
You can use Lilo to manage your Master Boot Record (with a simple text
|
| 1282 |
screen)
|
| 1283 |
or call Lilo from other Boot-Loaders to jump-start the Linux kernel.
|
| 1284 |
</example>
|
| 1285 |
|
| 1286 |
<p>
|
| 1287 |
Notez que le premier de la liste est le paquet disponible et le second est
|
| 1288 |
celui déjà installé. Pour plus d'informations générales sur un paquet, vous
|
| 1289 |
pouvez utiliser :
|
| 1290 |
|
| 1291 |
<p>
|
| 1292 |
<example>
|
| 1293 |
# apt-cache showpkg penguin-command
|
| 1294 |
Package: penguin-command
|
| 1295 |
Versions:
|
| 1296 |
1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_b
|
| 1297 |
inary-i386_Packages)(/var/lib/dpkg/status)
|
| 1298 |
|
| 1299 |
Reverse Depends:
|
| 1300 |
Dependencies:
|
| 1301 |
1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0)
|
| 1302 |
libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3)
|
| 1303 |
Provides:
|
| 1304 |
1.4.5-1 -
|
| 1305 |
Reverse Provides:
|
| 1306 |
</example>
|
| 1307 |
|
| 1308 |
<p>
|
| 1309 |
Et pour rechercher de quels paquets il dépend :
|
| 1310 |
|
| 1311 |
<p>
|
| 1312 |
<example>
|
| 1313 |
# apt-cache depends penguin-command
|
| 1314 |
penguin-command
|
| 1315 |
Depends: libc6
|
| 1316 |
Depends: libpng2
|
| 1317 |
Depends: libsdl-mixer1.1
|
| 1318 |
Depends: libsdl1.1
|
| 1319 |
Depends: zlib1g
|
| 1320 |
</example>
|
| 1321 |
|
| 1322 |
<p>
|
| 1323 |
En résumé, nous avons une série d'armes que nous pouvons utiliser pour rechercher
|
| 1324 |
le nom d'un paquet que nous voulons.
|
| 1325 |
</sect>
|
| 1326 |
|
| 1327 |
<sect id="dpkg-search">Utilisation de dpkg pour trouver le nom des paquets
|
| 1328 |
<p>
|
| 1329 |
Une des solutions pour localiser le nom d'un paquet est de connaître le nom d'un
|
| 1330 |
fichier important trouvé dans le paquet. Par exemple, pour trouver le paquet qui
|
| 1331 |
fournit un fichier <tt>« .h »</tt> particulier dont vous avez besoin pour
|
| 1332 |
compiler, vous pouvez lancer :
|
| 1333 |
|
| 1334 |
<p>
|
| 1335 |
<example>
|
| 1336 |
# dpkg -S stdio.h
|
| 1337 |
libc6-dev: /usr/include/stdio.h
|
| 1338 |
libc6-dev: /usr/include/bits/stdio.h
|
| 1339 |
perl: /usr/lib/perl/5.6.0/CORE/nostdio.h
|
| 1340 |
</example>
|
| 1341 |
|
| 1342 |
<p>
|
| 1343 |
ou :
|
| 1344 |
|
| 1345 |
<p>
|
| 1346 |
<example>
|
| 1347 |
# dpkg -S /usr/include/stdio.h
|
| 1348 |
libc6-dev: /usr/include/stdio.h
|
| 1349 |
</example>
|
| 1350 |
|
| 1351 |
<p>
|
| 1352 |
Pour trouver le nom de paquets installés sur votre système, ce qui est utile,
|
| 1353 |
par exemple, si vous prévoyez de nettoyer votre disque dur, vous pouvez
|
| 1354 |
lancer :
|
| 1355 |
|
| 1356 |
<p>
|
| 1357 |
<example>
|
| 1358 |
# dpkg -l | grep mozilla
|
| 1359 |
ii mozilla-browse 0.9.6-7 Mozilla Web Browser
|
| 1360 |
</example>
|
| 1361 |
|
| 1362 |
<p>
|
| 1363 |
Le problème avec cette commande est qu'elle peut « casser » le nom des
|
| 1364 |
paquets. Dans l'exemple ci-dessus, le nom complet du paquet est
|
| 1365 |
<tt>mozilla-browser</tt>. Pour arranger cela, vous pouvez utiliser la variable
|
| 1366 |
d'environnement <tt>COLUMNS</tt> comme ceci :
|
| 1367 |
|
| 1368 |
<p>
|
| 1369 |
<example>
|
| 1370 |
[kov]@[couve] $ COLUMNS=132 dpkg -l | grep mozilla
|
| 1371 |
ii mozilla-browser 0.9.6-7 Mozilla Web Browser - core and browser
|
| 1372 |
</example>
|
| 1373 |
|
| 1374 |
<p>
|
| 1375 |
ou la description ou une partie de celle-ci comme cela :
|
| 1376 |
|
| 1377 |
<p>
|
| 1378 |
<example>
|
| 1379 |
# apt-cache search "Mozilla Web Browser"
|
| 1380 |
mozilla-browser - Mozilla Web Browser
|
| 1381 |
</example>
|
| 1382 |
</sect>
|
| 1383 |
|
| 1384 |
<sect id="auto-apt">Comment installer des paquets « à la
|
| 1385 |
demande » ?
|
| 1386 |
<p>
|
| 1387 |
Vous compilez un programme et, tout à coup : patatras ! Il y a une
|
| 1388 |
erreur parce qu'il faut un fichier <tt>.h</tt> que vous n'avez pas. Le programme
|
| 1389 |
<prgn>auto-apt</prgn> peut vous sauver de ces scénarios. Il vous demande
|
| 1390 |
d'installer des paquets nécessaires, en stoppant le processus,
|
| 1391 |
et en continuant une fois que le paquet est installé.
|
| 1392 |
<p>
|
| 1393 |
Ce que vous avez simplement à faire est de lancer :
|
| 1394 |
|
| 1395 |
<p>
|
| 1396 |
<example>
|
| 1397 |
# auto-apt run commande
|
| 1398 |
</example>
|
| 1399 |
|
| 1400 |
<p>
|
| 1401 |
Où « commande » est la commande à exécuter qui devrait nécessiter des
|
| 1402 |
fichiers qui ne sont pas disponibles. Par exemple :
|
| 1403 |
|
| 1404 |
<p>
|
| 1405 |
<example>
|
| 1406 |
# auto-apt run ./configure
|
| 1407 |
</example>
|
| 1408 |
|
| 1409 |
<p>
|
| 1410 |
Il vous demandera d'installer les paquets nécessaires et appellera
|
| 1411 |
<prgn>apt-get</prgn> automatiquement. Si vous êtes sous X, une interface
|
| 1412 |
graphique remplacera l'interface texte par défaut.
|
| 1413 |
|
| 1414 |
<p>
|
| 1415 |
Pour être efficace, auto-apt conserve des bases de données qui doivent être à
|
| 1416 |
jour.
|
| 1417 |
C'est fait en appelant les commandes <tt>auto-apt update</tt>, <tt>auto-apt
|
| 1418 |
updatedb</tt> et <tt>auto-apt update-locale</tt>.
|
| 1419 |
</sect>
|
| 1420 |
|
| 1421 |
<sect id="apt-file">Comment savoir à quel paquet appartient un fichier ?
|
| 1422 |
<p>
|
| 1423 |
Si vous voulez installer un paquet et que vous ne parvenez pas à découvrir quel
|
| 1424 |
est son nom en cherchant avec <prgn>apt-cache</prgn>, mais que vous connaissez le
|
| 1425 |
nom du programme lui-même, ou quelque autre fichier appartenant à ce paquet,
|
| 1426 |
vous pouvez alors utiliser <prgn>apt-file</prgn> pour retrouver le nom de ce
|
| 1427 |
paquet. Ceci est fait comme suit :
|
| 1428 |
|
| 1429 |
<p>
|
| 1430 |
<example>
|
| 1431 |
$ apt-file search <var>nomdufichier</var>
|
| 1432 |
</example>
|
| 1433 |
|
| 1434 |
<p>
|
| 1435 |
Il fonctionne comme <prgn>dpkg -S</prgn>, mais il vous affichera aussi les
|
| 1436 |
paquets non installés qui contiennent ce fichier. Il peut aussi être utilisé
|
| 1437 |
pour trouver quel paquet contient les fichiers d'en-tête manquant à la
|
| 1438 |
compilation d'un programme, bien que <prgn>auto-apt</prgn> soit une meilleure
|
| 1439 |
solution pour résoudre ce problème, voir <ref id="auto-apt">.
|
| 1440 |
<p>
|
| 1441 |
Vous pouvez lister le contenu d'un paquet en exécutant :
|
| 1442 |
|
| 1443 |
<p>
|
| 1444 |
<example>
|
| 1445 |
$ apt-file list <var>nomdupaquet</var>
|
| 1446 |
</example>
|
| 1447 |
|
| 1448 |
<p>
|
| 1449 |
<prgn>apt-file</prgn> récupère une base de données des fichiers contenus dans
|
| 1450 |
tous les paquets, comme le fait <prgn>auto-apt</prgn> et elle doit être à jour.
|
| 1451 |
C'est fait en exécutant :
|
| 1452 |
|
| 1453 |
<p>
|
| 1454 |
<example>
|
| 1455 |
# apt-file update
|
| 1456 |
</example>
|
| 1457 |
|
| 1458 |
<p>
|
| 1459 |
Par défaut, <prgn>apt-file</prgn> et <prgn>auto-apt</prgn> utilisent la même
|
| 1460 |
base de données, voir <ref id="auto-apt">.
|
| 1461 |
|
| 1462 |
</sect>
|
| 1463 |
|
| 1464 |
<sect id="apt-listchanges">Comment rester informé sur les changements dans les
|
| 1465 |
paquets ?
|
| 1466 |
<p>
|
| 1467 |
Tous les paquets installent dans leur répertoire de documentation un fichier appelé
|
| 1468 |
<tt>changelog.Debian.gz</tt> qui contient la liste des changements faits sur le
|
| 1469 |
paquet depuis la dernière version. Vous pouvez lire ces fichiers à l'aide de
|
| 1470 |
<tt>zless</tt>, par exemple ; mais ce n'est pas quelque chose de très
|
| 1471 |
simple, après une mise à niveau du système complète, de consulter les changelog
|
| 1472 |
de tous les paquets mis à niveau.
|
| 1473 |
<p>
|
| 1474 |
Il y a une solution pour automatiser cette tâche au moyen d'un outil appelé
|
| 1475 |
<prgn>apt-listchanges</prgn>. Pour commencer, vous avez besoin
|
| 1476 |
d'installer le paquet <package>apt-listchanges</package>. Pendant l'installation du
|
| 1477 |
paquet, Debconf le configurera. Certaines questions peuvent ne pas vous être
|
| 1478 |
affichées car cela dépend de la priorité fixée dans Debconf. Répondez aux questions
|
| 1479 |
comme vous le voulez.
|
| 1480 |
<p>
|
| 1481 |
<!--
|
| 1482 |
L'option « Est-ce que apt-listchanges doit être automatiquement lancé par
|
| 1483 |
apt ? » est très utile parce qu'il montre une liste des changements
|
| 1484 |
faits à chaque paquet qui est installé par apt durant une mise à niveau et vous
|
| 1485 |
laisse les examiner avant de continuer. L'option " Est-ce que
|
| 1486 |
apt-listchanges demande une confirmation après l'affichage des
|
| 1487 |
changements ? » est utile parce qu'elle vous demande si vous voulez
|
| 1488 |
continuer l'installation après avoir lu la liste des changements. Si vous dites
|
| 1489 |
que vous ne voulez pas continuer apt-listchanges retournera une erreur et apt
|
| 1490 |
annulera l'installation. -->
|
| 1491 |
La première question vous demande si vous souhaitez
|
| 1492 |
qu'<prgn>apt-listchanges</prgn> affiche les changements. Vous pouvez vous les
|
| 1493 |
faire envoyer par courriel, ce qui est une bonne idée pour les mises à niveau
|
| 1494 |
automatiques ou vous pouvez simplement demander de les afficher à l'aide d'un
|
| 1495 |
outil de défilement tel que <prgn>less</prgn>, vous pourrez donc inspecter les
|
| 1496 |
changements avant de permettre la poursuite de la mise à niveau. Si vous ne
|
| 1497 |
voulez pas qu'<prgn>apt-listchanges</prgn> soit lancé automatiquement lors des
|
| 1498 |
mises à niveau, vous pouvez répondre <tt>none</tt>.
|
| 1499 |
<p>
|
| 1500 |
Après que apt-listchanges a été installé, aussitôt que des paquets sont
|
| 1501 |
téléchargés (ou récupérés sur un cédérom ou un disque monté) par
|
| 1502 |
<prgn>apt</prgn>, il affichera la liste des changements faits sur ces paquets
|
| 1503 |
avant de les installer.
|
| 1504 |
</sect>
|
| 1505 |
</chapt>
|
| 1506 |
|
| 1507 |
<chapt id="sourcehandling">Travailler avec des paquets sources
|
| 1508 |
<sect id="source">Télécharger un paquet source
|
| 1509 |
<p>
|
| 1510 |
Il est courant dans le monde du logiciel libre d'étudier le code source ou
|
| 1511 |
éventuellement de faire des corrections sur du code bogué. Pour le faire, vous
|
| 1512 |
aurez besoin de télécharger les sources du programme. Le système <prgn>apt</prgn>
|
| 1513 |
fournit une solution facile pour obtenir le code source des nombreux programmes
|
| 1514 |
contenus dans la distribution, en incluant tous les fichiers pour créer un
|
| 1515 |
<file>.deb</file> pour le programme.
|
| 1516 |
<p>
|
| 1517 |
Un autre usage courant des sources Debian est d'adapter une version d'un
|
| 1518 |
programme plus récente, de la distribution unstable, par exemple, pour
|
| 1519 |
l'utiliser dans la distribution stable. Compiler un paquet avec <em>stable</em>
|
| 1520 |
générera des .deb avec des dépendances ajustées pour que ce paquet puisse
|
| 1521 |
être disponible dans cette distribution.
|
| 1522 |
<p>
|
| 1523 |
Pour accomplir ceci, l'entrée <tt>deb-src</tt> dans votre
|
| 1524 |
<tt>/etc/apt/sources.list</tt> doit pointer vers unstable. Elle doit être aussi
|
| 1525 |
permise (décommentée). Voir la section <ref id="sources.list">.
|
| 1526 |
<p>
|
| 1527 |
Pour télécharger un paquet source, vous devez utiliser la commande
|
| 1528 |
suivante :
|
| 1529 |
|
| 1530 |
<p>
|
| 1531 |
<example>
|
| 1532 |
$ apt-get source nomdupaquet
|
| 1533 |
</example>
|
| 1534 |
<p>
|
| 1535 |
Cela téléchargera trois fichiers : un <tt>.orig.tar.gz</tt>, un
|
| 1536 |
<tt>.dsc</tt> et un <tt>.diff.gz</tt>. Dans le cas où les paquet sont faits
|
| 1537 |
spécialement pour Debian, le dernier de ceux-ci n'est pas téléchargé et le
|
| 1538 |
premier n'a généralement pas <tt>« orig »</tt> dans le nom.
|
| 1539 |
<p>
|
| 1540 |
Le fichier <tt>.dsc</tt> est utilisé par dpkg-source pour dépaqueter le paquet
|
| 1541 |
source dans le répertoire <var>nomdupaquet-version</var>. Avec chaque paquet source
|
| 1542 |
téléchargé, il y a un répertoire <tt>debian/</tt> qui contient les fichiers
|
| 1543 |
nécessaires pour la création d'un paquet <package>.deb</package>.
|
| 1544 |
<p>
|
| 1545 |
Pour construire automatiquement le paquet lorsqu'il est téléchargé, ajoutez
|
| 1546 |
seulement <tt>-b</tt> à la ligne de commande, comme ceci :
|
| 1547 |
|
| 1548 |
<p>
|
| 1549 |
<example>
|
| 1550 |
$ apt-get -b source nomdupaquet
|
| 1551 |
</example>
|
| 1552 |
|
| 1553 |
<p>
|
| 1554 |
Si vous décidez de ne pas créer de .deb lorsque vous le téléchargez, vous pouvez
|
| 1555 |
le créer plus tard en exécutant :
|
| 1556 |
|
| 1557 |
<p>
|
| 1558 |
<example>
|
| 1559 |
$ dpkg-buildpackage -rfakeroot -uc -b
|
| 1560 |
</example>
|
| 1561 |
|
| 1562 |
<p>
|
| 1563 |
à l'intérieur du répertoire créé pour le paquet après le téléchargement. Pour
|
| 1564 |
installer le paquet construit par la commande ci-dessus, vous devez directement
|
| 1565 |
utiliser le gestionnaire de paquets, comme ceci :
|
| 1566 |
|
| 1567 |
<p>
|
| 1568 |
<example>
|
| 1569 |
# dpkg -i <var>fichier.deb</var>
|
| 1570 |
</example>
|
| 1571 |
|
| 1572 |
<p>
|
| 1573 |
Il y a une différence entre les méthodes <prgn>apt-get</prgn> <tt>source</tt> et
|
| 1574 |
ses autres méthodes. La méthode <tt>source</tt> peut être utilisée par un
|
| 1575 |
utilisateur normal, sans avoir besoin des droits root. Les fichiers sont
|
| 1576 |
téléchargés dans le répertoire à partir duquel la commande
|
| 1577 |
<tt><prgn>apt-get</prgn> source paquet</tt> a été appelée.
|
| 1578 |
</sect>
|
| 1579 |
|
| 1580 |
<sect id="build-dep">Paquets nécessaires pour la compilation d'un paquet source
|
| 1581 |
<p>
|
| 1582 |
Normalement, des en-têtes et des bibliothèques dynamiques spécifiques doivent
|
| 1583 |
être présentes pour qu'un paquet source puisse être compilé. Tous les paquets
|
| 1584 |
source ont un champ dans leur fichier contrôle appelé
|
| 1585 |
« Builds-Depends : » qui indique quels paquets supplémentaires
|
| 1586 |
sont nécessaires pour la construction à partir des sources.
|
| 1587 |
<p>
|
| 1588 |
<prgn>apt</prgn> possède une solution simple pour télécharger ces paquets. Exécutez juste
|
| 1589 |
<tt>apt-get build-dep paquet</tt>, où « paquet » est le nom du paquet
|
| 1590 |
que vous allez construire. Par exemple :
|
| 1591 |
|
| 1592 |
<p>
|
| 1593 |
<example>
|
| 1594 |
# apt-get build-dep gmc
|
| 1595 |
Reading Package Lists... Done
|
| 1596 |
Building Dependency Tree... Done
|
| 1597 |
The following NEW packages will be installed:
|
| 1598 |
comerr-dev e2fslibs-dev gdk-imlib-dev imlib-progs libgnome-dev libgnorba-dev
|
| 1599 |
libgpmg1-dev
|
| 1600 |
0 packages upgraded, 7 newly installed, 0 to remove and 1 not upgraded.
|
| 1601 |
Need to get 1069kB of archives. After unpacking 3514kB will be used.
|
| 1602 |
Do you want to continue? [Y/n]
|
| 1603 |
</example>
|
| 1604 |
|
| 1605 |
<p>
|
| 1606 |
Les paquets qui seront installés sont les paquets nécessaires pour que
|
| 1607 |
<package>gmc</package> soit compilé correctement. C'est important de noter que
|
| 1608 |
cette commande ne cherche pas le paquet source du programme à compiler.
|
| 1609 |
Vous devrez par conséquent exécuter <tt><prgn>apt-get</prgn> source</tt>
|
| 1610 |
séparément pour le récupérer.
|
| 1611 |
|
| 1612 |
<p>
|
| 1613 |
Si tout ce que vous voulez est de vérifier quels paquets sont nécessaires pour
|
| 1614 |
construire un paquet donné, il existe une variante de la commande <tt>apt-cache
|
| 1615 |
show</tt> (voir <ref id="search">) qui affichera, parmi toutes les informations
|
| 1616 |
disponibles, la ligne <tt>Build-Depends</tt> qui liste ces paquets.
|
| 1617 |
|
| 1618 |
<p>
|
| 1619 |
<example>
|
| 1620 |
# apt-cache showsrc <var>paquet</var>
|
| 1621 |
</example>
|
| 1622 |
|
| 1623 |
</sect>
|
| 1624 |
</chapt>
|
| 1625 |
|
| 1626 |
<chapt id="erros">Comment traiter les erreurs ?
|
| 1627 |
<sect id="erros-comuns">Erreurs courantes
|
| 1628 |
<p>
|
| 1629 |
Des erreurs arriveront souvent, la plupart d'entre elles causées par les
|
| 1630 |
utilisateurs qui ne font pas attention. Ce qui suit est une liste des erreurs
|
| 1631 |
les plus fréquemment rapportées et comment les traiter.
|
| 1632 |
<p>
|
| 1633 |
Si vous recevez un message qui ressemble à celui ci-dessous quand vous essayez
|
| 1634 |
d'exécuter <tt><prgn>apt-get</prgn> install paquet</tt>...
|
| 1635 |
|
| 1636 |
<p>
|
| 1637 |
<example>
|
| 1638 |
Reading Package Lists... Done
|
| 1639 |
Building Dependency Tree... Done
|
| 1640 |
W: Couldn't stat source package list 'http://people.debian.org unstable/
|
| 1641 |
Packages'
|
| 1642 |
(/var/state/apt/lists/people.debian.org_%7ekov_debian_unstable_Packages) - stat
|
| 1643 |
(2 No such file or directory)
|
| 1644 |
W: You may want to run apt-get update to correct these missing files
|
| 1645 |
E: Couldn't find package penguineyes
|
| 1646 |
</example>
|
| 1647 |
|
| 1648 |
<p>
|
| 1649 |
vous avez oublié d'exécuter <tt><prgn>apt-get</prgn> update</tt> après vos
|
| 1650 |
derniers changements dans le fichier <tt>/etc/apt/sources.list</tt>.
|
| 1651 |
<p>
|
| 1652 |
Si l'erreur ressemble à :
|
| 1653 |
|
| 1654 |
<p>
|
| 1655 |
<example>
|
| 1656 |
E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)
|
| 1657 |
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
|
| 1658 |
</example>
|
| 1659 |
|
| 1660 |
<p>
|
| 1661 |
quand vous essayez n'importe quelle méthode <prgn>apt-get</prgn> autre que
|
| 1662 |
<tt>source</tt>, vous n'avez pas les permissions root, parce que vous l'exécutez
|
| 1663 |
en utilisateur normal.
|
| 1664 |
<p>
|
| 1665 |
Il y a une erreur similaire à celle ci-dessus qui arrive lorsque vous exécutez
|
| 1666 |
deux copies d'<prgn>apt-get</prgn> en même temps, ou éventuellement si vous
|
| 1667 |
essayez d'exécuter <prgn>apt-get</prgn> pendant qu'un processus
|
| 1668 |
<prgn>dpkg</prgn> est actif. La seule méthode qui peut être utilisée
|
| 1669 |
simultanément avec les autres est la méthode <tt>source</tt>.
|
| 1670 |
<p>
|
| 1671 |
Si une installation s'interrompt au milieu du processus et que vous ne pouvez
|
| 1672 |
plus installer ou supprimer de paquets, essayez d'exécuter ces deux
|
| 1673 |
commandes :
|
| 1674 |
|
| 1675 |
<p>
|
| 1676 |
<example>
|
| 1677 |
# apt-get -f install
|
| 1678 |
# dpkg --configure -a
|
| 1679 |
</example>
|
| 1680 |
|
| 1681 |
<p>
|
| 1682 |
et ensuite essayez à nouveau. Il sera peut être nécessaire d'exécuter la seconde
|
| 1683 |
des commandes ci-dessus plus d'une fois. C'est une leçon importante pour ces
|
| 1684 |
aventuriers qui utilisent « unstable ».
|
| 1685 |
|
| 1686 |
<p>
|
| 1687 |
Si vous rencontrez l'erreur « E: Dynamic MMap ran out of room » en
|
| 1688 |
lançant <tt>apt-get update</tt>, ajoutez la ligne suivante dans
|
| 1689 |
<file>/etc/apt/apt.conf</file> :
|
| 1690 |
|
| 1691 |
<example>
|
| 1692 |
APT::Cache-Limit 10000000;
|
| 1693 |
</example>
|
| 1694 |
|
| 1695 |
</sect>
|
| 1696 |
|
| 1697 |
<sect id="help">Où puis-je trouver de l'aide ?
|
| 1698 |
<p>
|
| 1699 |
Si vous êtes tourmenté par le doute, consultez l'importante documentation
|
| 1700 |
disponible pour le système de gestion des paquets Debian. Les <tt>--help</tt> et
|
| 1701 |
les pages de manuel peuvent être une énorme aide pour vous, comme le peut la
|
| 1702 |
documentation contenue dans les répertoires <tt>/usr/share/doc</tt> comme
|
| 1703 |
<tt>/usr/share/doc/apt</tt>.
|
| 1704 |
<p>
|
| 1705 |
Si la documentation ne suffit pas à faire disparaître votre peur, essayez de
|
| 1706 |
rechercher la réponse sur les listes de discussions Debian. Vous pouvez obtenir
|
| 1707 |
plus d'informations des listes d'utilisateurs spécifiques sur le site Web
|
| 1708 |
Debian : <url id="http://www.debian.org" name="http://www.debian.org">.
|
| 1709 |
<p>
|
| 1710 |
Souvenez-vous que ces listes et ressources doivent être utilisées seulement par
|
| 1711 |
les utilisateurs Debian ; les utilisateurs d'autres systèmes trouveront un
|
| 1712 |
meilleur support dans les communautés de leur propre distribution.
|
| 1713 |
</sect>
|
| 1714 |
</chapt>
|
| 1715 |
|
| 1716 |
<chapt id="distros">Quelles distributions supportent apt ?
|
| 1717 |
<p>
|
| 1718 |
Il a ici les noms de quelques distributions qui utilisent <prgn>apt</prgn> :
|
| 1719 |
<p>
|
| 1720 |
Debian GNU/Linux (<url id="http://www.debian.org" name="http://www.debian.org">)
|
| 1721 |
- C'est pour cette distribution que <prgn>apt</prgn> a été développé
|
| 1722 |
<p>
|
| 1723 |
Conectiva (<url id="http://www.conectiva.com.br"
|
| 1724 |
name="http://www.conectiva.com.br">)
|
| 1725 |
- Ce fut la première distribution à porter <prgn>apt</prgn> pour l'utiliser avec
|
| 1726 |
les rpm
|
| 1727 |
<p>
|
| 1728 |
Libranet (<url id="http://libranet.com" name="http://libranet.com">)
|
| 1729 |
<p>
|
| 1730 |
Mandrake (<url id="http://www.mandrake.com" name="http://www.mandrake.com">)
|
| 1731 |
<p>
|
| 1732 |
PLD (<url id="http://www.pld.org.pl" name="http://pld.org.pl">)
|
| 1733 |
<p>
|
| 1734 |
Vine (<url id="http://www.vinelinux.org" name="http://www.vinelinux.org">)
|
| 1735 |
<p>
|
| 1736 |
APT4RPM (<url id="http://apt4rpm.sf.net" name="http://apt4rpm.sf.net">)
|
| 1737 |
<p>
|
| 1738 |
Alt Linux (<url id="http://www.altlinux.ru/" name="http://www.altlinux.ru/">)
|
| 1739 |
<p>
|
| 1740 |
Red Hat (<url id="http://www.redhat.com/" name="http://www.redhat.com/">)
|
| 1741 |
<p>
|
| 1742 |
Sun Solaris (<url id="http://www.sun.com/" name="http://www.sun.com/">)
|
| 1743 |
<p>
|
| 1744 |
SuSE (<url id="http://www.suse.de/" name="http://www.suse.de/">)
|
| 1745 |
<p>
|
| 1746 |
Yellow Dog Linux (<url id="http://www.yellowdoglinux.com/"
|
| 1747 |
name="http://www.yellowdoglinux.com/">)
|
| 1748 |
</chapt>
|
| 1749 |
|
| 1750 |
<chapt id="agradecimentos">Crédits
|
| 1751 |
<p>
|
| 1752 |
Un grand merci à mes amis du projet Debian-BR, et à Debian elle-même, qui
|
| 1753 |
m'aide constamment et me donne toujours la force de continuer à travailler pour
|
| 1754 |
le bénéfice de l'humanité, aussi bien qu'en m'aidant dans mon but de sauver le
|
| 1755 |
monde. :)
|
| 1756 |
<p>
|
| 1757 |
Je veux aussi remercier le CIPSGA pour l'énorme aide qu'elle a donnée à notre
|
| 1758 |
projet et pour tous les projets libres qu'elle met en marche par de belles
|
| 1759 |
idées.
|
| 1760 |
<p>
|
| 1761 |
Et des remerciements particuliers :
|
| 1762 |
<p>
|
| 1763 |
Yooseong Yang <yooseong@debian.org> —pour la traduction du manuel en
|
| 1764 |
coréen.
|
| 1765 |
<p>
|
| 1766 |
Michael Bramer <grisu@debian.org> —pour la suggestion de l'inclusion
|
| 1767 |
de la section sur la conservation d'une version spécifique.
|
| 1768 |
<p>
|
| 1769 |
Bryan Stillwell <bryan@bokeoa.com> —pour les diverses rustines et
|
| 1770 |
corrections qu'il m'a envoyées.
|
| 1771 |
<p>
|
| 1772 |
Pawel Tecza <pawel.tecza@poczta.fm> —pour les diverses corrections
|
| 1773 |
qu'il m'a envoyées ainsi que pour la traduction polonaise.
|
| 1774 |
<p>
|
| 1775 |
Hugo Mora <h.mora@melix.com.mx> —pour la traduction espagnole.
|
| 1776 |
<p>
|
| 1777 |
Luca Monducci <luca.mo@tiscali.it> —pour la traduction italienne.
|
| 1778 |
<p>
|
| 1779 |
Tomohiro KUBOTA <kubota@debian.org> —pour la traduction japonaise.
|
| 1780 |
<p>
|
| 1781 |
Pablo Lorenzzoni <spectra@debian.org> pour l'écriture de la section sur
|
| 1782 |
netselect.
|
| 1783 |
<p>
|
| 1784 |
Steve Langasek <vorlon@netexpress.net> —pour la traduction du manuel en
|
| 1785 |
anglais.
|
| 1786 |
<p>
|
| 1787 |
Arnaldo Carvalho de Melo <acme@conectiva.com.br> —pour sa contribution à
|
| 1788 |
la liste des distributions supplémentaires qui supportent maintenant
|
| 1789 |
<prgn>apt</prgn> : Mandrake, PLD et Vine.
|
| 1790 |
<p>
|
| 1791 |
Erik Rossen <rossen@freesurf.ch> —pour l'astuce sur la variable COLUMNS
|
| 1792 |
pour dpkg -l.
|
| 1793 |
<p>
|
| 1794 |
Ross Boylan <RossBoylan@stanfordalumni.org> —pour l'astuce sur
|
| 1795 |
l'utilisation de -o Debug::pkgProblemResolver=yes.
|
| 1796 |
<p>
|
| 1797 |
Matt Kraai <kraai@debian.org> —pour les diverses rustines et
|
| 1798 |
corrections qu'il m'a envoyées.
|
| 1799 |
<p>
|
| 1800 |
Aaron M. Ucko <ucko@debian.org> —pour ses relectures et corrections.
|
| 1801 |
<p>
|
| 1802 |
Jon Åslund <d98-jas@nada.kth.se> —pour l'écriture de la section sur
|
| 1803 |
apt-file.
|
| 1804 |
</chapt>
|
| 1805 |
|
| 1806 |
<chapt id="novas">Nouvelles versions de ce manuel
|
| 1807 |
<p>
|
| 1808 |
Ce manuel fut créé par le projet <url id="http://debian-br.cipsga.org.br"
|
| 1809 |
name="Debian-BR">, dans le but d'aider à l'utilisation journalière de Debian.
|
| 1810 |
<p>
|
| 1811 |
Des nouvelles versions de ce document seront disponibles dans la page du projet, à
|
| 1812 |
<url id="http://www.debian.org/doc/ddp" name="http://www.debian.org/doc/ddp">
|
| 1813 |
<p>
|
| 1814 |
Les commentaires et critiques peuvent m'être envoyés directement par courriel à
|
| 1815 |
<email>kov@debian.org</email>.
|
| 1816 |
</chapt>
|
| 1817 |
|
| 1818 |
</book>
|
| 1819 |
<!-- (<tt>/usr/share/doc/packagename</tt>) -->
|
| 1820 |
</debiandoc>
|