Quelques trucs et astuces pour gérer au mieux ses paquets .deb en ligne de commande avec Apt. Cet utilitaire, disponible sous Debian et tous ses dérivés, est un incontournable pour maitriser la mécanique d’installation de logiciels sous cet environnement.
- Les dépôts:
Toute la logithèque Debian (le principe est le même pour ses dérivés Ubuntu, Mint…) est accessible depuis des serveurs miroir. La liste officielle est disponible sur www.debian.org/mirror/list
Les serveurs à interroger sont alors déclarés dans le fichier /etc/apt/sources.list. Voir sources.list pour des exemples de configuration.
Une fois que cette liste est définie, on a tout ce qu’il faut pour gérer les installations et mises à jour de logiciels.
- Mise à jour de la liste des paquets
A faire avant tout le reste. Debian stocke localement une liste de paquets disponibles dans /var/cache/apt. Faire un update permet de disposer de la liste à jour et de ne pas créer de conflits de versions insolubles.
# apt-get update
- Installation de toutes les mises à jour disponibles
une fois l’update réalisé, on va installer toutes les mises à jour disponibles pour le système
# apt-get dist-upgrade
Pour simplifier la procédure, on peut enchaîner les deux commandes en une seule :
# apt-get update && apt-get dist-upgrade -y
- rechercher un paquet
Sans connaitre le nom du paquet, on peut faire une recherche sur un terme et, par exemple, filtrer les réponses avec un grep
apt-cache search terme1|grep -i terme2
- afficher le détail d’un paquet
Si on connait le nom du paquet, on peut voir sa description
apt-cache show nomdupaquet
- Installation d’un paquet
# apt-get install nomdupaquet -y
- Suppression d’un paquet
# apt-get remove nomdupaquet -y
- Supprimer les paquets inutiles
Après une désinstallation, certaines dépendances peuvent ne plus être nécessaires. On les supprime avec un autoremove.
# apt-get autoremove -y
- Problème avec les traductions
Lors d’un apt-get update, il arrive qu’on récupère une longue liste de fichiers Translation-it, Translation-hu…
Ca ressemble à ça:
Ign http://www.debian-multimedia.org wheezy/non-free TranslationIndex Ign http://security.debian.org wheezy/updates/non-free TranslationIndex Ign http://www.debian-multimedia.org wheezy/non-free Translation-fr_FR Ign http://www.debian-multimedia.org wheezy/non-free Translation-fr Ign http://www.debian-multimedia.org wheezy/non-free Translation-en Ign http://www.debian-multimedia.org wheezy/non-free Translation-hu Ign http://www.debian-multimedia.org wheezy/non-free Translation-pl Ign http://www.debian-multimedia.org wheezy/non-free Translation-ca Ign http://www.debian-multimedia.org wheezy/non-free Translation-nb Ign http://www.debian-multimedia.org wheezy/non-free Translation-km Ign http://www.debian-multimedia.org wheezy/non-free Translation-it Ign http://www.debian-multimedia.org wheezy/non-free Translation-eu Ign http://www.debian-multimedia.org wheezy/non-free Translation-cs Ign http://www.debian-multimedia.org wheezy/non-free Translation-ru Ign http://www.debian-multimedia.org wheezy/non-free Translation-vi Ign http://www.debian-multimedia.org wheezy/non-free Translation-ja Ign http://www.debian-multimedia.org wheezy/non-free Translation-uk Ign http://www.debian-multimedia.org wheezy/non-free Translation-ro Ign http://www.debian-multimedia.org wheezy/non-free Translation-sv Ign http://www.debian-multimedia.org wheezy/non-free Translation-pt Ign http://www.debian-multimedia.org wheezy/non-free Translation-zh Ign http://www.debian-multimedia.org wheezy/non-free Translation-fi Ign http://www.debian-multimedia.org wheezy/non-free Translation-sk Ign http://www.debian-multimedia.org wheezy/non-free Translation-de Ign http://www.debian-multimedia.org wheezy/non-free Translation-nl Ign http://www.debian-multimedia.org wheezy/non-free Translation-es Ign http://www.debian-multimedia.org wheezy/non-free Translation-id Ign http://www.debian-multimedia.org wheezy/non-free Translation-ko Ign http://www.debian-multimedia.org wheezy/non-free Translation-da Ign http://www.debian-multimedia.org wheezy/non-free Translation-eo
Si ça ne casse pas le fonctionnement des mises à jour, c’est assez pénible de se récupérer toute cette liste pour des traductions qui ne concernent finalement pas la version fr du système.
Pour désactiver cette récupération, on va modifier la configuration de Apt pour ne renseigner aucun langage de traduction. Créer et éditer le fichier apt.conf suivant :
vi /etc/apt/apt.conf.d/apt.conf
et coller
Acquire::Languages "none";
sauvegarder et refaire un update :
# apt-get update
Normalement, aucun fichier de traduction n’est chargé. On a donc tous les paquets en anglais. Ce qui n’est pas une solution mais on avance.
Ensuite, désactiver à nouveau ce paramètre. Apt va alors récupérer ses paramètre régionaux :
vi /etc/apt/apt.conf.d/apt.conf
et commenter
#Acquire::Languages "none";
Nouvelle mise à jour:
apt-get update Ign http://www.debian-multimedia.org wheezy/non-free Translation-fr_FR Ign http://www.debian-multimedia.org wheezy/non-free Translation-fr Ign http://www.debian-multimedia.org wheezy/non-free Translation-en
Il ne reste plus que les versions -en et -fr, ce qui n’est pas si mal.
Pour vérifier les paramètre de langue dans Apt :
apt-config dump|grep Language
affiche
Acquire::Languages ""; Acquire::Languages:: "fr_FR"; Acquire::Languages:: "fr"; Acquire::Languages:: "en"; Acquire::Languages:: "none";
- Purger le cache Apt
Le contenu du cache Apt peut occuper pas mal d’espace disque, avec de nombreux fichiers .deb stockés localement. On peut libérer facilement cet espace sans risque pour le sytème. Apt reconstruit automatiquement la structure de son cache à la prochaine mise à jour
# rm -rf /var/cache/apt/
Bonjour, j’ai testé votre solution pour éviter de télécharger toutes les traductions et ça ne fonctionne pas chez moi. D’ailleurs le fichier /etc/apt/apt.cond.d/apt.conf n’existait pas. j’ai du le créer. Au final la commande
apt-config dump|grep Language
me retourne une liste de tous les languages 😐
Désolé. En fait c’est que j’avais un problème de configuration du source.list qui empêchait le update de se terminer correctement. Maintenant ça fonctionne très bien. Merci pour le tuto !
oui, le fichier de conf est à créer la première fois. J’ai modifié l’article pour que ca soit un peu plus clair.
Pas de quoi! 😉
Rhaaaa merci!! Avec mon bas haut-débit je n’en pouvais plus de voir toutes ces langues vérifiées alors que je n’en ai cure. Enfin mon sauveur! Mille fois merci!
hello,
merci pour ce joli résumé, bien pratique.
Reblogged this on combantu and commented:
Gestion des paquets debian
Bonjour, Merci pour ce précieux article.
Pour purger le cache, un apt-get clean n’est-il pas plus récommendable?