Ceci avait été abordé dans la première partie de cette formation à la section Qu'est-ce qu'un package ?.
Trois programmes s'occupent de la gestion des packages Debian : dpkg, apt-get et dselect :
Il faut éviter de l'utiliser en temps normal pour installer et désinstaller des packages, puisque qu'il ne gère pas les dépendances entre packages.
Par contre, c'est souvent le seul moyen d'installer des packages qui ne sont pas présents dans la distribution. Il faut alors télécharger les fichiers correspondant aux packages et les installer avec la commande dpkg.
Les commandes à savoir sont les suivantes :
Installe les packages package1 et package2 (comme dpkg ne gère pas les dépendances, il faut installer en même temps les packages qui dépendent l'un de l'autre ; si une ancienne version du package est déjà installée, elle sera remplacée) :
# dpkg -i package1_0.1_i386.deb package2_0.2_i386.deb |
Désinstalle le package package1 mais ne supprime pas ses fichiers de configuration :
# dpkg -r package1 |
Désinstalle le package package1 et supprime ses fichiers de configuration :
# dpkg -r --purge package1 |
Reconfigure le package package1 qui est déjà installé :
# dpkg-reconfigure package1 |
Donne le nom du package qui a installé le fichier /usr/bin/vim (la réponse est facile, c'est le package vim !) :
% dpkg -S /usr/bin/vim |
Affiche la liste des fichiers installés par le package vim :
% dpkg -L vim |
Affiche la liste des packages installés :
% dpkg -l |
Pour plus d'informations ou pour avoir la liste complète des options disponibles, consultez le manuel de dpkg :
% man dpkg |
Apt-get est la couche qui apporte une certaine intelligence et une grande facilité d'utilisation au système de gestion des packages Debian. Avec apt-get, on définit les sources des packages dans un fichier de configuration et il gère l'installation et le retrait des packages en tenant compte des dépendances ainsi que le téléchargement des packages s'ils sont sur une source réseau.
Apt-get est donc utilisé pour installer et retirer les packages inclus dans la distribution ainsi que des packages qui peuvent être inclus dans les sources.
Les sources des packages sont définies dans le fichier de configuration /etc/apt/sources.list. Une source doit tenir sur une seule ligne (pas de retour à la ligne au milieu de la définition d'une source) et commencer par un des deux mots clés suivants :
deb pour définir une source de packages binaires ;
deb-src pour définir une source de packages sources (cela n'intéressera que les développeurs qui veulent examiner le code source des programmes).
Pour ajouter ou retirer une source réseau ou fichier, il faut éditer le fichier "à la main".
Pour ajouter comme source un CD ou DVD Debian, il faut exécuter la commande suivante :
# apt-cdrom add |
Pour enlever un CD ou DVD Debian de la liste des sources, il faut éditer le fichier et supprimer la ligne correspondant au CD ou au DVD.
Vous trouverez tous les détails sur la syntaxe dans man sources.list.
Le fichier /etc/apt/sources.list doit contenir :
deb http://ftp.fr.debian.org/debian woody main contrib non-free deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free deb http://security.debian.org/ woody/updates main contrib non-free |
Si vous aviez suivi la méthode 6 disquettes ou la méthode 1 mini-CD, vous n'avez normalement rien à changer. Par contre, si vous aviez suivi la méthode 1 CD, vous devez supprimer la ligne qui correspond au CD et taper les trois lignes ci-dessus.
Vous pouvez remplacer ftp.fr.debian.org par le nom DNS d'un autre miroir Debian, notamment si vous avez accès à un miroir plus rapide. Par exemple, pour avoir le miroir Debian de VIA, il faut mettre debian.via.ecp.fr à la place de ftp.fr.debian.org. |
Pour l'instant, le fichier /etc/apt/sources.list doit normalement contenir 7 lignes correspondant aux 7 CDs, ou une seule ligne si vous utilisiez un DVD. Selon les cas, vous devrez ajouter ou non des lignes au fichier :
si l'ordinateur n'a pas de connexion Internet, alors vous n'avez pas besoin de modifier le fichier ;
si l'ordinateur a une connexion Internet par modem classique que vous avez réussi à la faire marcher au chapitre Faire marcher la connexion Internet, alors rajoutez la ligne suivante pour bénéficier des mises à jour de sécurité :
deb http://security.debian.org/ woody/updates main contrib non-free |
si l'ordinateur a une connexion Internet de type ADSL ou câble que vous avez réussi à la faire marcher au chapitre Faire marcher la connexion Internet, alors rajoutez les lignes suivantes pour bénéficier des nouvelles releases de Debian et des mises à jour de sécurité :
deb http://ftp.fr.debian.org/debian woody main contrib non-free deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free deb http://security.debian.org/ woody/updates main contrib non-free |
Les commandes à savoir sont les suivantes :
Met à jour la liste des packages disponibles (pour les sources réseau ou fichier, il doit aller voir si elles ont été mises à jour ; pour les sources CD, il ne fait rien de particulier) :
# apt-get update |
Met à jour tous les packages déjà installés à la dernière version disponibles dans les sources :
# apt-get upgrade |
Idem que la commande précédente, mais cette commande est optimisée pour les migrations vers une version supérieure de Debian (par exemple passer de la version stable à la version instable) :
# apt-get dist-upgrade |
Installe les packages package1 et package2 et tous les packages dont ils dépendent :
# apt-get install package1 package2 |
Désinstalle le package package1 sans effacer ses fichiers de configuration :
# apt-get remove package1 |
Idem que la commande précédente mais ses fichiers de configuration sont supprimés :
# apt-get remove --purge package1 |
Efface du disque dur les packages téléchargés pour être installés (inutile quand la source est un CD ou un fichier du système de fichiers local) :
# apt-get clean |
Pour plus informations ou pour avoir la liste complète des options disponibles, lisez le très complet APT HOWTO ou consultez le manuel d'apt-get :
% man apt-get |
Pour chercher un package dans la base des packages disponibles, utilisez la commande suivante :
% apt-cache search liste_de_mots_clés |
Par exemple, pour chercher un compilateur Fortran, tapez :
Il recherche alors les termes "fortran" et "compiler" dans la description de tous les packages disponibles. Dans les réponses, vous obtenez notamment :
|
Pour afficher les caractéristiques et la description du package package1, utilisez la commande suivante :
% apt-cache show package1 |
Par exemple :
|
Dselect est une alternative à apt-get pour la gestion intelligente des packages. Vous vous en êtes déjà servi une fois pendant la procédure d'installation, au chapitre Les packages.
Il a un certain nombre d'avantages par rapport à apt-get, mais il a aussi de nombreux inconvénients, notamment la complexité d'utilisation pour un débutant ainsi que la difficulté de résoudre les problèmes de dépendance. J'ai donc décidé de ne pas expliquer dans ce chapitre l'utilisation de dselect ; vous trouverez une explication détaillée de son utilisation dans l'annexe Utiliser Dselect.
Maintenant que, quelle que soit la méthode que vous avez utilisée, vous avez accès à l'intégralité des packages, vous allez pouvoir compléter l'installation de vim, en installant le programme par, qui permet de reformatter du texte dans vim :
# apt-get install par |
Ce programme apporte deux nouvelles fonctions à vim quand vous êtes en mode commande :
la touche # coupe les lignes d'un paragraphe à 72 caractères (on dit wrapper), ce qui est la norme pour les documents texte que vous envoyez (mail, post dans les news...) ;
la touche @ fait la même chose que # mais en justifiant le texte.
Vous pouvez désormais installer les packages hotplug et usbutils comme ceux qui ont suivi les autres méthodes :
# apt-get install hotplug usbutils |
Vous pouvez maintenant retirer la ligne que vous aviez ajouté à la fin du fichier /etc/fstab et qui commençait par usbdevfs.
Certains packages qui ont été installés par la procédure d'installation ou par dselect ne vous sont en réalité pas utiles, ou en tout cas pas dans l'immédiat (notamment les packages ipchains pour faire du firewalling avec les vieux noyaux de la branche 2.2, lpr qui est un vieux serveur d'impression, nvi qui est une vieux clone de vi...) ; je vous conseille de les enlever :
# apt-get remove --purge ipchains lpr nvi ipmasqadm # rm /etc/printcap |
Précédent | Sommaire | Suivant |
Faire marcher la connexion Internet | Niveau supérieur | Le réseau et la sécurité |