Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
apt-cli [Le 02/06/2018, 17:43] – [apt] otograf krodelabestioleapt-cli [Le 18/02/2026, 15:48] (Version actuelle) – [Options] -s krodelabestiole
Ligne 1: Ligne 1:
-{{tag>apt paquet gestionnaire_de_paquets installation_logiciel Xenial Bionic}}+{{tag>apt paquet gestionnaire_de_paquets installation_logiciel Focal Bionic}}
  
 ====== apt ====== ====== apt ======
Ligne 15: Ligne 15:
 ===== Utilisation ===== ===== Utilisation =====
  
-La syntaxe d'apt est la suivante :+La syntaxe d%%'%%''[[man>apt]]'' est la suivante :
  
 <code>apt [méthode] [paramètres]</code> <code>apt [méthode] [paramètres]</code>
  
-Certaines méthodes requièrent l'utilisation de la commande [[:sudo]], d'autres pas, selon qu'elles influent ou non sur les fichiers du système.+Certaines méthodes requièrent l'utilisation de la commande ''[[:sudo]]'', d'autres pas, selon qu'elles influent ou non sur les fichiers du système.
  
 ==== Méthodes ==== ==== Méthodes ====
Ligne 27: Ligne 27:
 ^ méthode ^ paramètre ^ description ^ ^ méthode ^ paramètre ^ description ^
 | **list** | nom(s) du ou des paquet(s) | Liste les paquets selon leur nom. | | **list** | nom(s) du ou des paquet(s) | Liste les paquets selon leur nom. |
-| **search** | chaîne de caractère à rechercher | Cherche dans les descriptions de paquet. |+| **search** | texte à rechercher | Liste les paquets dans les descriptions desquels on trouve le texte correspondant. |
 | **show** | nom(s) du ou des paquet(s) | Affiche les détails du paquet. | | **show** | nom(s) du ou des paquet(s) | Affiche les détails du paquet. |
-| **install** | nom(s) du ou des paquet(s) | Installe les paquets. |+| **install** | nom(s) du ou des paquet(s) | Installe les [[:paquet|paquets]], soit depuis les [[:dépôts]], soit depuis un fichier [[:installer_un_paquet_deb#installer_un_paquet_hors_depots_non_recommande|deb isolé]]. |
 | **remove** | nom(s) du ou des paquet(s) | Supprime les paquets. | | **remove** | nom(s) du ou des paquet(s) | Supprime les paquets. |
 | **autoremove** | pas de paramètre | Supprime automatiquement les dépendances inutilisées. | | **autoremove** | pas de paramètre | Supprime automatiquement les dépendances inutilisées. |
-| **update** | pas de paramètre | Met à jour la liste des paquets disponibles. |+| **update** | pas de paramètre | Met à jour //la liste// des paquets disponibles (mais pas les paquets eux-mêmes). |
 | **upgrade** | pas de paramètre | Met à jour le système en installant/mettant à jour les paquets. | | **upgrade** | pas de paramètre | Met à jour le système en installant/mettant à jour les paquets. |
 | **full-upgrade** | pas de paramètre | Met à jour le système en supprimant/installant/mettant à jour les paquets. | | **full-upgrade** | pas de paramètre | Met à jour le système en supprimant/installant/mettant à jour les paquets. |
Ligne 41: Ligne 41:
 ^ méthode ^ paramètre ^ description ^ ^ méthode ^ paramètre ^ description ^
 | **purge** | nom(s) du ou des paquet(s) | Supprime un paquet ainsi que ses fichiers de configuration. | | **purge** | nom(s) du ou des paquet(s) | Supprime un paquet ainsi que ses fichiers de configuration. |
-| **depends** | nom(s) du ou des paquet(s) | Liste les dépendances d'un paquet. |+| **depends** | nom du ou des paquet | Liste les dépendances d'un paquet. | 
 +| **rdepends** | nom du ou des paquet | Liste les paquets qui ont pour dépendance ce paquet. |
 | **autoclean** | pas de paramètre | Supprime le cache APT des paquets périmés. | | **autoclean** | pas de paramètre | Supprime le cache APT des paquets périmés. |
 +| **autopurge** | pas de paramètre | Supprimme automatiquement les dépendances inutilisées ainsi que leurs fichiers de configuration |
 | **clean** | pas de paramètre | Supprime tout le cache APT. | | **clean** | pas de paramètre | Supprime tout le cache APT. |
 +| **changelog** | pas de paramètre | Affiche le journal des modifications du paquet |
 +| **policy** | pas de paramètre | Affiche les versions des paquets indiqués et leur statut |
 | **help** | pas de paramètre | Fournit une aide rapide concernant cet outil. | | **help** | pas de paramètre | Fournit une aide rapide concernant cet outil. |
  
-<note tip> +==== Patterns ==== 
-À la place d'un nom de paquet il est souvent possible d'indiquer en paramètre une expression régulière.+ 
 +=== Avant Ubuntu Focal 20.04 === 
 + 
 +Avec les version précédant la version 2.0 d'apt, introduite avec [[:focal|Ubuntu Focal 20.04]], il est possible d'indiquer en paramètre une expression régulière à la place des noms de paquets.
  
 Par exemple la commande Par exemple la commande
 ''apt list \*-desktop'' ''apt list \*-desktop''
-listera tous les paquets dont le nom se termine par //-desktop//. +listera tous les paquets dont le nom se termine par ''-desktop''
-</note+ 
 +=== À partir d'Ubuntu Focal 20.04 === 
 + 
 +Depuis la version 2.0, c'est la fonctionnalité des //patterns// (jusque là propre à [[:aptitude#motifs_de_recherche_utilisation_avancee|aptitude]]) qui a été implémentée. 
 + 
 +Cette fonctionnalité est décrite en anglais sur [[https://manpages.ubuntu.com/manpages/focal/man7/apt-patterns.7.html|cette page]]. Entre autre : 
 + 
 +  * ''~n'' pour utiliser une [[wpfr>expression régulière]] sur le nom. 
 +  * ''~i'' permet de sélectionner les paquets installés. 
 +  * ''~U'' indique les paquets à mettre à jour. 
 +  * ''~M'' pour les paquets installés automatiquement. 
 +  * ''!'' avant le //pattern// permet d'inverser la sélection. 
 + 
 +Dans le cas où on utilise plus d'un //pattern// ou une combinaison de //patterns// (''|'' signifie par ex. l'opérateur logique //ou//), il faut entourer l'ensemble des paramètres de guillemets ''%%'%%''
 + 
 + 
 + 
 +Pour lister tous les paquets dont le nom commence par ''ubuntu-'' on utilisera donc la commande suivante : 
 +<code>apt list ~n^ubuntu-</code> 
 +Dans cette commande le pattern ''~n'' (ou ''~name'') précède l'expression ''^'', qui indique le début de la chaîne de caractère (et donc le début du nom du paquet), suivie du nom de paquet (en [[wpfr>expression régulière]]) : on veut donc une chaîne qui commence par ''ubuntu-''
 + 
 +Pour lister tous les paquets dont le nom se termine par ''-desktop'' on utilisera plutôt l'expression ''$''
 +<code>apt list ~n-desktop$</code> 
 +Dans cette commande le pattern ''~n'' (ou ''~name'') précède un nom de paquet (en [[wpfr>expression régulière]]), et l'expression ''$'' indique la fin de la chaîne de caractère (et donc la fin du nom du paquet) : on veut donc une chaîne qui se termine par ''-desktop''
 + 
 +Pour lister tous les paquets dont le nom se termine par ''-desktop'' mais ne commence pas par ''task-'' on utilisera la commande suivante (''!'' pour la négation) : 
 +<code>apt list '~n-desktop$ !~n^task-'</code> 
 +L'espace entre les deux patterns n'est pas indispensable (il peut simplifier la lecture). 
 + 
 +==== Options ==== 
 + 
 +Certaines options passées en paramètres permettent de modifier le comportement d%%'%%''[[man>apt]]'', ou les retours de certaines commandes. 
 + 
 +  * ''%%--%%simulate'' ou sa version courte ''-s'' permet de simuler l'exécution d'une commande sans la réaliser vraiment. Ceci permet de tester en particulier l'effet d'une installation ou d'une désinstallation, et de visualiser la réaction en chaîne des dépendances qui peut en résulter, sans mettre en danger le système. 
 +  * ''%%--%%installed'' ou sa version courte ''-i'' permet de ne sélectionner que les paquets //installés//
 +  * ''%%--%%all-versions'' ou sa version courte ''-a'' permet de sélectionner toutes les versions d'un paquet.
  
 ==== Exemples ==== ==== Exemples ====
 +
 +=== Recherche d'un paquet ===
 +
 +Pour rechercher un paquet avec apt on utilise cette commande :
 +<code>apt search [mots clés]</code>
 +apt retournera une liste de tous les paquets dont tous les mots clés spécifiés apparaissent dans le nom ou la description du paquet.
  
 === Installation d'un paquet === === Installation d'un paquet ===
  
-Pour installer un paquet on lancera donc la commande suivante :+Pour installer un paquet on lance la commande suivante :
 <code>sudo apt install [nom du paquet]</code> <code>sudo apt install [nom du paquet]</code>
 apt installera les dépendances éventuellement nécessaires. apt installera les dépendances éventuellement nécessaires.
 +
 +=== Mise à jour des logiciels ===
 +
 +Les mises à jour ordinaires du système peuvent se faire avec les commandes suivantes :
 +<code>sudo apt update
 +sudo apt full-upgrade</code>
  
 === Désinstallation d'un paquet === === Désinstallation d'un paquet ===
  
-Pour désinstaller un paquet on utilisera cette commande :+Pour désinstaller un paquet on utilise cette commande :
 <code>sudo apt remove [nom du paquet]</code> <code>sudo apt remove [nom du paquet]</code>
-apt ne supprimera pas automatiquement les éventuels dépendances. Par contre si le paquet est lui-même une dépendance indispensable à un autre paquet installé, ce dernier sera également désinstallé (heureusement le script demandera d'abord une confirmation).+apt ne supprimera pas automatiquement les éventuelles dépendances. Par contre si le paquet est lui-même une dépendance indispensable à un autre paquet installé, ce dernier sera également désinstallé (heureusement le script demandera d'abord une confirmation).
  
-Vous pouvez supprimer toutes les dépendances orphelines avec la commande :+Il est également possible de supprimer un paquet, ainsi que ses dépendances et ses fichiers de configuration en une seule commande : 
 +<code>sudo apt autoremove --purge [nom du paquet]</code> ou 
 +<code>sudo apt autopurge [nom du paquet]</code> 
 + 
 +<note> 
 +Seuls les fichiers de configuration marqués comme //conffile//, souvent placés dans ''/etc'', sont supprimés. Les fichiers de préférences de l'utilisateur crées dans le [[:arborescence#répertoire personnel]] et les journaux (''/var/log'') ne sont pas supprimés. 
 +</note> 
 + 
 +=== Suppression des dépendances orphelines === 
 + 
 +On peut supprimer toutes les dépendances orphelines avec la commande :
 <code>sudo apt autoremove</code> <code>sudo apt autoremove</code>
  
-Il est également possible de supprimer un paquet, ainsi que ses dépendances et ses fichiers de configuration en une seule commande +Cette commande supprimera aussi les anciennes versions du [[:noyau]devenues inutiles.
-<code>sudo apt autoremove --purge [nom du paquet]</code>+
  
-=== Mise à jour des logiciels ===+<note>... À moins qu'on ait eu la mauvaise idée de spécifier les numéros de versions dans les noms de paquets qui le proposent, auquel cas des //versions précises// seraient marquées comme "//installées manuellement//", et dans ce cas jamais supprimées automatiquement !((Voir [[https://forum.ubuntu-fr.org/viewtopic.php?id=2093778|ce sujet]] sur le forum pour plus de détails.))</note>
  
-Les mises à jour ordinaires du système peuvent se faire avec les commandes suivantes : +=== Lister les paquets installés manuellement === 
-<code>sudo apt update + 
-sudo apt upgrade</code>+<code>apt list '~i !~M'</code> 
 + 
 +=== Lister les paquets ayant des résidus de configuration (rc) === 
 + 
 +<code>apt list ?config-files</code> ou <code>apt list ~c</code> 
 +Pour supprimer ces paquets remplacer //list// par //remove// ou purge. 
 + 
 +=== Lister les paquets qui n'existent pas (ou plus) dans les dépôts === 
 + 
 +<code>apt list ?obsolete</code> ou <code>apt list ~o</code> 
 + 
 +=== Lister les paquets qui ont des dépendances cassées === 
 + 
 +<code>apt list ?broken</code> ou <code>apt list ~b</code> 
 + 
 +===== Problèmes courants ===== 
 + 
 +Vous pouvez consulter la liste des problèmes courants liés plus généralement à APT sur [[:probleme_apt|cette page de la documentation]].
  
 ===== Voir aussi ===== ===== Voir aussi =====