Apt : gestion facile des paquets sous Debian

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/

7 réflexions au sujet de « Apt : gestion facile des paquets sous Debian »

  1. 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.

        Merci pour le tuto !

        Pas de quoi! 😉

  2. 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!

Laisser un commentaire