====== Gestion des paquets avec APT ====== * Objet : utiliser le gestionnaire de paquet apt * Niveau requis : {{tag>débutant avisé }} * Commentaires : les commandes présentées fonctionnent à partir de Jessie * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) * Suivi : {{tag>à-tester}} * Création par [[user>nIQnutn]] 10/01/2016 * Testé par <...> le <...> * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=13033| Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) ===== Introduction ===== La gestion des paquets sous Debian se fait par l'outil APT (Advanced Packaging Tool). Voici un petit récapitulatif des différentes commandes pour gérer les paquets sous Debian et exécuter les opérations de base avec apt à partir de Jessie. Plutôt que d'utiliser des interfaces graphiques comme [[doc:systeme:apt:synaptic|synaptic]], on va privilégier les outils en ligne de commande. Il existe différents utilitaires [[doc:systeme:apt:apt-get|apt-get]], [[doc:systeme:apt:aptitude|aptitude]] et apt permettant d'éxécuter les mêmes opérations. Versions utilisées: Debian 8.2 / apt 1.0.9.8.1 Il est conseillé d'avoir lu [[doc:systeme:apt:sources.list|APT : fichier sources.list]] . **apt** simplifie et uniformise les commandes et apporte une interface plus agréable (barre de progression et coloration syntaxique). Nous verrons ici uniquement les fonctionnalités qui sont documentées pour apt. Je conseille encore l'utilisation d'apt-get et aptitude pour les fonctions avancées. ===== Mettre à jour la liste des paquets ===== La commande //update// permet simplement d'actualiser la liste des paquets disponibles pour votre système. On lance cette commande avant d'installer un nouveau paquet ou avant d'installer les mises à jour du système. apt update Elle ne modifie pas le système, elle demande simplement s'il existe de nouveaux paquets ou des nouvelles versions de paquets. Cette commande est généralement le préalable avant toute opération sur les paquets. ===== Installer les dernières versions d'un paquet ===== Nous vous recommandons d'installer les dernières versions de paquets disponibles pour votre système. Cela permet de corriger des bugs et d'installer les correctifs de sécurité. apt upgrade Elle doit toujours être précédée de la commande ''apt update''. De nouveaux paquets peuvent être installés, mais les paquets installés ne seront jamais supprimés. La commande upgrade permet d'installer les mises à jour disponibles de tous les paquets présents sur le système en utilisant les sources énumérées dans sources.list(5). De nouveaux paquets seront installés si cela est nécessaire pour satisfaire des dépendances, mais les paquets installés ne seront jamais supprimés. Si la mise à jour d'un paquet nécessite la suppression d'un paquet installé, la mise à jour n'est pas réalisée. ===== Installer un nouveau paquet ===== ==== Paquet provenant d'un dépôt du sources.list ==== Une autre commande incontournable permettant d'installer un/plusieurs paquet(s) sur son système. Il faudra précéder l'installation d'un paquet par la commande ''apt update'' pour s'assurer d'installer la dernière version disponible. apt install correspondant au nom exact du logiciel que l'on veut installer. Si on souhaite installer le jeu SuperTux, la commande sera ''apt install supertux''. On peut retrouver ce nom dans les différents wiki, tuto et forum. Tous les paquets sont recensés sur la page . On peut installer plusieurs paquets en même temps, en séparant simplement le nom des paquets par un espace. apt install La commande **install** installera automatiquement toutes les dépendances nécessaires. Si vous utilisez les dépôts de rétroportage (backports) ou si vous utilisez plusieurs branches de Debian (pinning), il est possible de forcer l'installation d'un paquet d'une branche: apt install -t jessie-backports libreoffice Il faut vérifier que les dépendances qui peuvent être installées n'altèrent pas le système. Le risque avec les dépôts backports est minime mais il est présent si on utilise différentes branches de Debian ou des dépôts tiers. Pour connaître le nom des branches, il faut regarder ce qui est indiqué dans le fichier // /etc/apt/sources.list// . ==== Paquet téléchargé depuis un site ==== Il est déconseillé de télécharger et installer des paquets *.deb téléchargés sur le net pour la stabilité et la sécurité du système\\ A utiliser en connaissance de cause donc ;-) Pour installer un paquet *.deb téléchargé sur le net, on peut utiliser [[doc:systeme:apt:gdebi|gdebi]] qui gère les dépendances et peut être utilisé avec une interface graphique ou en ligne de commande. \\ Depuis Debian 9 (Stretch), il est aussi possible d'utiliser la commande apt :\\ Imaginons que l'on a téléchargé le paquet Brackets.Release.1.11.64-bit.deb depuis le site [[http://brackets.io/|http://brackets.io/]] et qu'il se trouve dans le dossier Téléchargements, la commande pour l'installer (et qui gère les dépendances) apt install /home/identifiant-USER/Téléchargements/Brackets.Release.1.11.64-bit.deb ===== Supprimer un paquet ===== Il arrive que certains paquets ne soient plus nécessaires et il est préférable de les désinstaller. Cette commande permet de supprimer un paquet présent sur votre système. apt remove La commande ne supprimera pas les dépendances qui ne sont plus nécessaires ni certains fichiers de configuration. Il faut toujours regarder quels paquets seront supprimés. Dans certains cas exceptionnels, le gestionnaire de paquet pourrait supprimer des paquets dont vous avez besoin. Supprimer un paquet et les fichiers de configuration : apt purge Supprimer un paquet et ses dépendances installées automatiquement qui ne sont plus nécessaires : apt autoremove Supprimer un paquet et ses dépendances installées automatiquement qui ne sont plus nécessaires ainsi que les fichiers de configuration : apt autoremove --purge ===== Editer le fichier sources.list ===== Il peut arriver de devoir modifier son fichier sources.list pour ajouter des paquets non-libres ou appartenant à des dépôts tiers. Cette commande permet de bénéficier de la coloration syntaxique et fournit des vérifications de sécurité de base. apt edit-sources ==== Premier lancement et choix de l'éditeur de texte ==== Lors du premier lancement, vous pourrez choisir l'éditeur à utiliser. Select an editor. To change later, run 'select-editor'. 1. /bin/nano <---- easiest 2. /usr/bin/vim.tiny Choose 1-2 [1]: Si vous ne savez pas lequel choisir, utilisez [[doc:editeurs:nano|nano]] Lors des lancements suivants, vous pouvez forcer temporairement un éditeur: EDITOR=/bin/nano apt edit-sources Ou changer l'éditeur par défaut: select-editor ==== Avec sources.list.d ==== Pour éditer un fichier présent dans le répertoire sources.list.d, il faut spécifier son nom. exemple: pour éditer le fichier ''/etc/apt/sources.list.d/sury.list'' apt edit-sources sury.list ===== Autres fonctions utiles ===== ==== Connaître les paquets qui seront mis à jour ==== apt list --upgradable Cela permet de connaître les paquets qui seront installés lors de la prochaine mise à jour (upgrade). ==== Trouver des informations sur un paquet ==== La commande **show** affiche toutes les informations détaillées sur le(s) paquet(s) donné(s). apt show ==== Trouver les versions disponibles d'un logiciel ==== Cela permet de connaître les versions disponibles pour un paquet. apt list --all-versions Cette commande est véritablement utile si vous utilisez des dépôts supplémentaires ou si vous utilisez plusieurs branches de Debian. ==== Rechercher un paquet ==== La commande **search** recherche le(s) terme(s) donné(s) et affiche les paquets correspondants. apt search Utile quand on veut installer un paquet dont on ne connaît pas le nom exact. On pourra lancer la commande *show* pour confirmer qu'il s'agit du bon paquet. ==== Mise à jour pour l’ensemble du système ==== La commande **full-upgrade** remplit la même fonction que upgrade mais peut aussi supprimer des paquets installés si cela est nécessaire pour résoudre un conflit entre des paquets. apt full-upgrade Cependant : apt dist-upgrade Reste utilisable, bien qu'il faille mieux utiliser //full//, ne serait-ce que pour l'harmonisation avec la nouvelle commande... ;) Merci à **Nac** d'avoir ouvert un post permettant cette précision sur le forum là : * https://debian-facile.org/viewtopic.php?pid=272162#p272162 //Que son chemin sur le libre se couvre tout du long de pétales de rose...// dist-upgrade prend la route ambitieuse d'installer de nouveaux packages et / ou de supprimer les packages installés pour satisfaire les dépendances. Cela pourrait à son tour supprimer certains packages nécessaires à une autre application, c'est pourquoi il n'est pas toujours recommandé. On utilise généralement cette commande lors du basculement d'une version majeure de Debian à la suivante. ===== Astuces ===== Trouver les paquets installés provenant d'un dépot précis : [[doc:systeme:apt:aptitude:|doc:systeme:apt:aptitude:]] chapitre "Utilisation avancée de l'option "search" " ===== Ressources ===== Consulter le manuel de la commande **apt**: man apt * [[https://debian-handbook.info/browse/fr-FR/stable/sect.apt-get.html|Commandes aptitude, apt-get et apt]] * [[https://www.debian.org/doc/manuals/debian-reference/ch02.fr.html|Gestion des paquets Debian]] * [[http://blog.niqnutn.com/index.php?article43/gestion-des-paquets-avec-apt|Gestion des paquets avec APT]] ===== Lien vers le forum ===== * [[https://debian-facile.org/viewtopic.php?pid=177389#p177389 | Micp - L'autocompletion avec l'outil apt.]] ===== Articles liés ===== * [[doc:systeme:apt:downgrade|Rétrograder une Debian]]