La gestion des paquets sous Debian
Un billet qui mérite bien sa place car il très important de savoir manipuler les paquets et dépôts de sa distribution (ici Debian mais c’est aussi ses dérivés tels que Mint, Ubuntu, Kubuntu …)
1. Rappel sur les dépôts et paquets
Un dépôt de paquets est un gros miroir de fichiers sur internet (ou en local dans votre infrastructure cf. article Miroir de paquets debian/ubuntu) qui contient des paquets qui vont vous permettre d’installer des applications sur votre système.
Un paquet debian est un fichier qui possède l’extension deb. Lorsque vous utilisez un gestionnaire de paquets il télécharge simplement un fichier deb et l’installe.
Pour gérer les dépôts auxquels vous êtes reliés aller visiter votre fichier /etc/apt/sources.list. Il devrait ressembler à ceci (avec des dépots différents si vous en avez choisi d’autres à l’installation de votre système) :
# # deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 DVD Binary-1 20090413-00:33]/ lenny contrib main #deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 DVD Binary-1 20090413-00:33]/ lenny contrib main deb http://mir1.ovh.net/debian/ lenny main deb-src http://mir1.ovh.net/debian/ lenny main deb http://security.debian.org/ lenny/updates main contrib deb-src http://security.debian.org/ lenny/updates main contrib deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib |
2. Installer un paquet
Pour installer un paquet sur un système basé Debian il faut utiliser aptitude (basé sur apt-get). Nous n’utilisons plus apt-get depuis Debian Sarge car aptitude permet de ne pas « péter » son système à cause de dépendances. La syntaxe à utiliser pour installer est aptitude install <paquet>.
Exemple pour installer un serveur SSH (openssh-server)
aptitude install openssh-server |
Votre paquet se télécharge et s’installe sur votre système. Si des dépendances sont nécessaires, elles seront automatiquement installées.
[nice_info]Si vous avez votre fichier deb, vous pouvez l’installer directement avec dpkg de la manière suivante[/nice_info]
dpkg -i mon_paquet.deb |
3. Désinstaller un paquet
Pour désinstaller un paquet avec aptitude, la commande à utiliser est aptitude remove <paquet>
Exemple : Désinstallation de nano (éditeur de texte à mon goût bidon :p ) :
aptitude remove nano |
Votre paquet est désinstallé.
[nice_info]Si vous avez installé via dpkg votre paquet, vous pouvez le désinstaller via la commande suivante[/nice_info]
dpkg -r mon_paquet.deb |
4. Mettre à jour la liste des paquets disponible sur les miroirs
Il est important de mettre à jour la liste des paquets disponibles sur le miroir que vous utilisez afin d’obtenir toujours la liste actuelle à l’aide de la commande aptitude update :
aptitude update |
5. Mettre à jour vos paquets installées
Lorsque vous souhaitez mettre à jour les paquets installés sur votre système, vous n’avez qu’une seule commande à entrer :
aptitude safe-upgrade |
6. Vider le cache aptitude
Comme expliqué dans l’introduction du billet, lorsque vous installez un paquet il télécharge un (ou plusieurs fichiers deb) qui restent dans le cache d’aptitude. Il peut être bien de vider ce cache afin de récupérer un peu d’espace disque (/var/cache/apt/archives). Il y a une commande pour celà :
aptitude clean |
7. Astuces
En tant qu’Administrateur Debian, je vous propose un petit coup de pouce. Si vous connaisez l’auto-completion linux sachez qu’elle est disponible pour la liste des paquets, pour ceci, lisez mon billet sur l’auto-complétion debian. Lorsque vous saisirez aptitude install apa et appuierez (une ou deux fois) sur « TAB » la liste sera affichée
exemple :
root@archimede:~# aptitude install apache apache apache2-dev apache2-mpm-perchild apache2-src apache-common apache2 apache2-doc apache2-mpm-prefork apache2-suexec apache-perl apache2.2-common apache2-mpm apache2-mpm-threadpool apache2-suexec-custom apache-ssl apache2-common apache2-mpm-event apache2-mpm-worker apache2-threaded-dev apachetop <!--more-->apache2-dbg apache2-mpm-itk apache2-prefork-dev apache2-utils apache-utils |
8. RTFM
Ceci est une liste de commandes non-exhaustive pour gérer vos paquets Debian, n’hésitez pas à consulter le manuel d’aptitude et de dpkg. Il existe d’autres commandes comme permettre de télécharger seulement le fichier deb à partir d’aptitude …