Gestion des logiciels avec APT
Table des matières
Le logiciel apt (pour Advanced Packaging Tool) est un système complet et avancé de gestion de paquets, permettant une recherche facile et efficace, une installation simple et une désinstallation propre de logiciels et utilitaires pour Debian.
Les distributions basées sur Debian utilisent aussi apt comme Ubuntu ou Linux Mint.
Installation (ou mise à jour) d'un paquet : apt install <nom_du_paquet>
Installation (ou mise à jour) d'un paquet sans demande de confirmation : apt install -y <nom_du_paquet>
En cas d'ajout d'un dépôt PPA ou d'un autre dépôt, et que la nouvelle version s'avère instable, on peut installer une version précédente (si elle est présente dans un dépôt configuré)
Installation d'une version présente dans les dépôts : apt install <nom_du_paquet>=<version> -V
Installer un (des) fichier(s) deb téléchargé(s) depuis internet : apt deb fichier.deb ou apt deb /chemin/des/*.deb
Si cela ne fonctionne pas (ajout récent), installer en 2 temps avec dpkg : dpkg -i fichier.deb puis on installe les dépendances avec apt install -f
La mise à jour se fait en deux temps :
Mise à jour des dépôts (liste locale des logiciels disponibles avec leur version données dans les dépôts) : apt update
Mise à jour des paquets : apt upgrade
Mise à jour des paquets (supprime des paquets si nécessaire pour la mise à jour) : apt full-upgrade
Supprimer un paquet : apt remove nom_du_paquet
Supprimer un paquet et ses dépendances : apt autoremove nom_du_paquet
Suppression complète d'un paquet, ses dépendances et ses fichiers de configuration : apt autoremove --purge nom_du_paquet
La recherche de paquets fait appel à la commande apt search. Il n'est pas nécessaire d'être root pour exécuter cette commande.
Recherche d'un paquet avec son nom, ou un mot de sa description : apt search nom_du_paquet_ou_description
Recherche d'un paquet avec une partie de son nom uniquement : apt search -n _nom_du_paquet
La recherche d'informations de paquets fait appel à la commande apt show. Il n'est pas nécessaire d'être root pour exécuter cette commande.
Recherche d'informations sur un paquet : apt show nom_du_paquet
Pour cela, éditer en root le fichier /etc/apt/preferences ou créez un fichier dans /etc/apt/preferences.d et indiquez ceci :
La priorité élevée à 1001 est supérieure à samba classique. En précisant la version, même si une mise à jour est disponible, elle aura une priorité moins élevée, et donc la mise à jour est bloquée.
Exemple avec samba:
Si vous souhaitez bloquer un paquet pour empêcher son installation, (exemple snapd sous Ubuntu), éditer en root le fichier /etc/apt/preferences ou créez un fichier dans /etc/apt/preferences.d et indiquez ceci :
La priorité -1 bloque l'installation d'un paquet.
apt ne dispose pas d'outils (à ce que je sache) pour lister les paquets installés. On va donc utiliser la commande dpkg.
Lister tous les paquets installés : dpkg -l
On peut évidemment filtrer la liste avec grep, comme dans cet exemple avec samba:
Dans certains cas, il peut être nécessaire de limiter la bande passante d'APT.
Pour cela, créer le fichier /etc/apt/apt.conf.d/76download et y mettre ceci dedans. La limite est exprimée en kB/s (dans mon exemple, 50kB/s)
Il est possible d'utiliser un proxy (si vous en avez un dans votre réseau).
Pour cela, éditez votre fichier /etc/apt/apt.conf et indiquez le proxy de cette manière :
Exemple avec proxy HTTP :
Introduction
Le logiciel apt (pour Advanced Packaging Tool) est un système complet et avancé de gestion de paquets, permettant une recherche facile et efficace, une installation simple et une désinstallation propre de logiciels et utilitaires pour Debian.
Les distributions basées sur Debian utilisent aussi apt comme Ubuntu ou Linux Mint.
APT, les commandes essentielles
Installer des logiciels
Installation (ou mise à jour) d'un paquet : apt install <nom_du_paquet>
Installation (ou mise à jour) d'un paquet sans demande de confirmation : apt install -y <nom_du_paquet>
En cas d'ajout d'un dépôt PPA ou d'un autre dépôt, et que la nouvelle version s'avère instable, on peut installer une version précédente (si elle est présente dans un dépôt configuré)
Installation d'une version présente dans les dépôts : apt install <nom_du_paquet>=<version> -V
Installer un (des) fichier(s) deb téléchargé(s) depuis internet : apt deb fichier.deb ou apt deb /chemin/des/*.deb
Si cela ne fonctionne pas (ajout récent), installer en 2 temps avec dpkg : dpkg -i fichier.deb puis on installe les dépendances avec apt install -f
Mettre à jour le système
La mise à jour se fait en deux temps :
Mise à jour des dépôts (liste locale des logiciels disponibles avec leur version données dans les dépôts) : apt update
Mise à jour des paquets : apt upgrade
Mise à jour des paquets (supprime des paquets si nécessaire pour la mise à jour) : apt full-upgrade
Supprimer des paquets
Supprimer un paquet : apt remove nom_du_paquet
Supprimer un paquet et ses dépendances : apt autoremove nom_du_paquet
Suppression complète d'un paquet, ses dépendances et ses fichiers de configuration : apt autoremove --purge nom_du_paquet
Recherche de paquets
La recherche de paquets fait appel à la commande apt search. Il n'est pas nécessaire d'être root pour exécuter cette commande.
Recherche d'un paquet avec son nom, ou un mot de sa description : apt search nom_du_paquet_ou_description
Recherche d'un paquet avec une partie de son nom uniquement : apt search -n _nom_du_paquet
Informations sur des paquets
La recherche d'informations de paquets fait appel à la commande apt show. Il n'est pas nécessaire d'être root pour exécuter cette commande.
Recherche d'informations sur un paquet : apt show nom_du_paquet
Autour d'APT
Bloquer la mise à jour de certains paquets
Pour cela, éditer en root le fichier /etc/apt/preferences ou créez un fichier dans /etc/apt/preferences.d et indiquez ceci :
Code :
Package: nom_du_paquet
Pin: version numéro_de_version_installee
Pin-priority: 1001
La priorité élevée à 1001 est supérieure à samba classique. En précisant la version, même si une mise à jour est disponible, elle aura une priorité moins élevée, et donc la mise à jour est bloquée.
Exemple avec samba:
Code :
Package: samba
Pin: version 3.5.6
Pin-priority: 1001
Bloquer un paquet
Si vous souhaitez bloquer un paquet pour empêcher son installation, (exemple snapd sous Ubuntu), éditer en root le fichier /etc/apt/preferences ou créez un fichier dans /etc/apt/preferences.d et indiquez ceci :
Code BASH :
Package: snapd Pin: release * Pin-Priority: -1
La priorité -1 bloque l'installation d'un paquet.
Lister les paquets installés
apt ne dispose pas d'outils (à ce que je sache) pour lister les paquets installés. On va donc utiliser la commande dpkg.
Lister tous les paquets installés : dpkg -l
On peut évidemment filtrer la liste avec grep, comme dans cet exemple avec samba:
Code BASH :
root@server:~# dpkg -l | grep samba ii samba 2:3.5.6~dfsg-3squeeze9 SMB/CIFS file, print, and login server for Unix ii samba-common 2:3.5.6~dfsg-3squeeze9 common files used by both the Samba server and client ii samba-common-bin 2:3.5.6~dfsg-3squeeze9 common files used by both the Samba server and client
Personnalisation
Limiter la bande passante d'APT
Dans certains cas, il peut être nécessaire de limiter la bande passante d'APT.
Pour cela, créer le fichier /etc/apt/apt.conf.d/76download et y mettre ceci dedans. La limite est exprimée en kB/s (dans mon exemple, 50kB/s)
Code BASH :
Acquire { Queue-mode "access"; http { Dl-Limit "50"; }; };
Utiliser un proxy avec APT
Il est possible d'utiliser un proxy (si vous en avez un dans votre réseau).
Pour cela, éditez votre fichier /etc/apt/apt.conf et indiquez le proxy de cette manière :
Code BASH :
Acquire::protocole::Proxy "protocole://ip:port";
Exemple avec proxy HTTP :
Code BASH :
Acquire::http::Proxy "http://10.21.27.238:3128";