raspberrypi:linux:apt

Sommaire Raspberry Pi sous Linux

[Mise à jour le 5/8/2020]


Le gestionnaire de paquets est un système qui permet d'installer des logiciels, de les maintenir à jour et de les désinstaller. Son travail est de n'utiliser que des éléments compatibles entre eux, les installations sans utiliser de gestionnaire de paquets sont donc déconseillées.

Un paquet est un fichier contenant un ou plusieurs programmes, des fichiers de données complémentaires, des exemples, des documentations ou des scripts. Il embarque également des informations importantes pour la distribution comme la plateforme concernée, la liste d'autres paquets nécessaires à son fonctionnement, un journal des changements faits, etc.

La gestion de paquets est le coeur et la raison d'être d'une distribution GNU/Linux.Dans le cas de Raspbian, les paquets se trouvent sur raspbian.org et plus précisément ici.

Sous Debian (Raspbian), le moyen le plus simple de gérer l’installation, la mise à niveau et la suppression de logiciels consiste à utiliser APT (Advanced Packaging Tool). APT est un projet relativement vaste, qui prévoyait à l'origine une interface graphique. Il repose sur une bibliothèque contenant le cœur de l'application. apt-get est la première interface, en ligne de commande, développée dans le cadre du projet.

apt est une deuxième interface en ligne de commande fournie par APT qui corrige quelques erreurs de conception de apt-get.

Pour installer ou supprimer des paquets (logiciels), vous devez disposer d'autorisations d'utilisateur root. En savoir plus sur les utilisateurs et root.

Pour installer de nouveaux paquets ou mettre à jour des paquets existants, vous avez besoin d'une connexion Internet.

Notez que l'installation d'un paquet peut utiliser beaucoup d'espace sur une carte SD. Il faut donc surveiller de près l'utilisation du disque et utiliser une carte SD de taille appropriée. Notez également qu'un verrou est appliqué lors de l'installation du logiciel, on ne peut donc pas installer plusieurs paquets en même temps.

2.1 Les sources des paquets

APT conserve une liste des sources de paquets sur le Raspberry Pi dans un fichier /etc/apt/sources.list. Avant d'installer le paquet, il est nécessaire de mettre à jour le fichier sources.list avec la commande update puis de mettre à jour les paquets avec la commande upgrade.

2.2 Mettre à jour la liste des paquets

*.bash
sudo apt update
sudo apt list --upgradable # pour voir la liste des paquets à mettre à jour

2.3 Mettre à jour les paquets

*.bash
sudo apt upgrade
Il existe aussi la commande dist-upgrade qui se différencie de upgrade par le fait que, si nécessaire, le système peut retirer des paquets présents et en installer des nouveaux. Ceci arrive en cas de changement de dépendance ou de nom de paquet.
*.bash
sudo apt dist-upgrade
Pour maintenir son système à jour de façon équilibré, on enchaîne généralement update, upgrade et dist-upgrade.

2.4 Rechercher un paquet sur le web

Il est possible de rechercher, dans les archives, un paquet avec un mot clé donné :

*.bash
apt-cache search <package_name>

2.5 Authentifier les paquets

Les paquets sont authentifiés avec des clés. apt-key est l'utilitaire de gestion des clés d'APT. Il gère les clés dont se sert apt pour authentifier les paquets. Les paquets authentifiés par ces clés seront réputés fiables.

*.bash
# Exemple : Avant de pouvoir installer InfluxDB sur Raspbian, il est nécessaire d’indiquer 
# au système ou se trouvent les clés du dépôts du projet InfluxDB
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add 

2.6 Installer un paquet

sudo apt install <package_name>

En tapant cette commande, l'utilisateur est informé de la quantité d'espace disque occupée par le paquet et une demande de confirmation de son installation lui est proposée. Entrer O (ou appuyer simplement sur Entrée, car oui est l’action par défaut) autorisera l’installation. Cela peut être contourné en ajoutant le drapeau -y à la commande :

*.bash
sudo apt install <package_name> -y

2.7 Utiliser un paquet préalablement installé

Exemple : le paquet tree (outil en ligne de commande qui permet de visualiser la structure du répertoire en cours et tout son contenu)

*.bash
tree
..
├── hello.py
├── games
│   ├── asteroids.py
│   ├── pacman.py
│   ├── README.txt
│   └── tetris.py
Note : man tree donne des informations sur la commande tree. whereis tree indique la position de tree

2.8 Obtenir des informations sur un paquet

On peut afficher plus d'informations sur un paquet avant de l'installer avec :

*.bash
apt-cache show <package_name>

2.9 Afficher la liste des paquets installés

La liste des “nombreux” paquets installés (plus de mille) se fait avec la commande dpkg.

*.bash
dpkg -l

Pour limiter l'affichage aux lignes contenant un texte spécifié, on redirigera les données avec | vers le filtre grep.

*.bash
dpkg -l | grep <texte> # | est le pipe

2.10 Mettre à jour des paquets

  • Tous les paquets
*.bash
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
  • Un seul paquet
*.bash
sudo apt install <package_name>

2.11 Désinstaller un paquet

  • Retirer

Un paquet peut être désinstallé avec l'opération remove. Cependant, ses fichiers de configuration sont conservés afin d'accélérer une éventuelle réinstallation.

*.bash
sudo apt remove <package_name>

L'utilisateur est invité à confirmer la suppression. Encore une fois, le drapeau -y confirmera automatiquement.

  • Purger

On peut également choisir de supprimer complètement le paquet et ses fichiers de configuration avec apt purge.

*.bash
sudo apt purge <package_name>
  • raspberrypi/linux/apt.txt
  • Dernière modification: 2021/08/12 08:06
  • de phil