Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:apt:apt [10/01/2016 19:03] nIQnutn [Installation] |
doc:systeme:apt:apt [12/07/2016 12:41] bendia |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : utiliser le gestionnaire de paquet apt | * Objet : utiliser le gestionnaire de paquet apt | ||
- | * Niveau requis : FIXME {{tag>débutant }} | + | * Niveau requis : {{tag>débutant avisé }} |
* Commentaires : les commandes présentées fonctionnent à partir de Jessie | * 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à !.]] :-) | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) |
- | * Suivi : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | + | * Suivi : {{tag>à-tester}} |
* Création par [[user>nIQnutn]] 10/01/2016 | * Création par [[user>nIQnutn]] 10/01/2016 | ||
- | * Testé par <...> le <...> FIXME | + | * 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 !)) FIXME | + | * 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 !)) |
- | **Nota :** | ||
- | |||
- | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | |||
- | ===== Installation ===== | ||
La gestion des paquets sous Debian se fait par l'outil APT (Advanced Packaging Tool). | 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. | 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 synaptic, on va privilégier les outils en ligne de commande. | + | 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. | 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. | ||
Ligne 28: | Ligne 23: | ||
- | Il est conseillé d'avoir lu [sources.list: gérer vos dépôts Debian]() . | + | 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). | **apt** simplifie et uniformise les commandes et apporte une interface plus agréable (barre de progression et coloration syntaxique). | ||
Ligne 43: | Ligne 38: | ||
Elle ne modifie pas le système, elle demande simplement s'il existe de nouveaux paquets ou des nouvelles versions de paquets. | Elle ne modifie pas le système, elle demande simplement s'il existe de nouveaux paquets ou des nouvelles versions de paquets. | ||
- | Cette command est générallement le préalable avant toute opération sur les paquets. | + | Cette command est généralement le préalable avant toute opération sur les paquets. |
- | ## Installer les dernières versions d'un paquet | + | ===== Installer les dernières versions d'un paquet ===== |
- | Un bon utilisateur se doit d'installer dernières versions de paquets disponibles pour son système. | + | Nous vous recommandons d'installer les dernières versions de paquets disponibles pour votre système. |
- | Cela permet de corriger bugs et installer les correctifs de sécurité. | + | Cela permet de corriger des bugs et d'installer les correctifs de sécurité. |
- | apt upgrade | + | <code root>apt upgrade</code> |
+ | |||
- | On la précède toujours de la commande `apt update`. | + | 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. | De nouveaux paquets peuvent être installés, mais les paquets installés ne seront jamais supprimés. | ||
- | ## Installer un nouveau paquet | + | ===== Installer un nouveau paquet ===== |
Une autre commande incontournable permettant d'installer un/plusieurs paquet(s) sur son système. | 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. | + | 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 <paquet> | + | <code root>apt install <paquet></code> |
+ | |||
<paquet> correspondant au nom exact du logiciel que l'on veut installer. | <paquet> correspondant au nom exact du logiciel que l'on veut installer. | ||
- | Si on souhaite installer le jeu SuperTux, la commande sera `apt install supertux`. | + | 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. | On peut retrouver ce nom dans les différents wiki, tuto et forum. | ||
Tous les paquets sont recensés sur la page <https://www.debian.org/distrib/packages#search_packages>. | Tous les paquets sont recensés sur la page <https://www.debian.org/distrib/packages#search_packages>. | ||
Ligne 69: | Ligne 66: | ||
On peut installer plusieurs paquets en même temps, en séparant simplement le nom des paquets par un espace. | On peut installer plusieurs paquets en même temps, en séparant simplement le nom des paquets par un espace. | ||
- | apt install <paquet1> <paquet2> <paquet3> | + | <code root>apt install <paquet1> <paquet2> <paquet3></code> |
+ | |||
- | La commande *install* installera automatiquement toutes les dépendances nécessaires. | + | 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: | 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 | + | <code root>apt install -t jessie-backports libreoffice</code> |
+ | |||
- | avertissement: il faut vérifier que les dépendances qui peuvent être installées n'altèrent pas le système. | + | <note important>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. | + | 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.</note> |
- | note: Pour connaître le nom des branches, il faut regarder ce qui est indiqué dans le fichier */etc/aptsources.list* . | ||
+ | <note>Pour connaître le nom des branches, il faut regarder ce qui est indiqué dans le fichier // /etc/apt/sources.list// .</note> | ||
- | ## Supprimer un paquet | + | |
+ | ===== Supprimer un paquet ===== | ||
Il arrive que certains paquets ne soient plus nécessaires et il est préférable de les désinstaller. | 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. | Cette commande permet de supprimer un paquet présent sur votre système. | ||
- | apt remove <paquet> | + | <code root>apt remove <paquet></code> |
+ | |||
La commande supprimera également les dépendances qui ne sont plus nécessaires. | La commande supprimera également les dépendances qui ne sont plus nécessaires. | ||
- | warning: il faut toujours regarder quels paquets seront supprimés. | + | <note important>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. | Dans certains cas exceptionnels, le gestionnaire de paquet pourrait supprimer des paquets dont vous avez besoin. | ||
+ | </note> | ||
- | ## Editer le fichier sources.list | + | ===== 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. | 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. | Cette commande permet de bénéficier de la coloration syntaxique et fournit des vérifications de sécurité de base. | ||
- | apt edit-sources | + | <code root>apt edit-sources</code> |
+ | |||
+ | ==== Avec sources.list.d ==== | ||
+ | |||
+ | Pour éditer un fichier présent dans le répertoire sources.list.d, il faut spécifier son nom. | ||
- | ## Autres fonctions utiles | + | exemple: pour éditer le fichier ''/etc/apt/sources.list.d/deb-multimedia.list'' |
- | ### Connaître les paquets qui seront mis à jour | + | <code root>apt edit-sources deb-multimedia.list</code> |
+ | ===== Autres fonctions utiles ===== | ||
- | apt list --upgradable | + | ==== Connaître les paquets qui seront mis à jour ==== |
+ | |||
+ | <code user>apt list --upgradable</code> | ||
+ | |||
Cela permet de connaître les paquets qui seront installés lors de la prochaine mise à jour (upgrade). | Cela permet de connaître les paquets qui seront installés lors de la prochaine mise à jour (upgrade). | ||
- | ### Trouver des informations sur un paquet | + | ==== Trouver des informations sur un paquet ==== |
- | La commande *show* affiche toutes les informations détaillés sur le(s) paquet(s) donné(s). | + | La commande **show** affiche toutes les informations détaillées sur le(s) paquet(s) donné(s). |
- | apt show <paquet> | + | <code user>apt show <paquet></code> |
+ | |||
- | ### Trouver les versions disponibles d'un logiciel | + | ==== Trouver les versions disponibles d'un logiciel ==== |
Cela permet de connaître les versions disponibles pour un paquet. | Cela permet de connaître les versions disponibles pour un paquet. | ||
- | apt list --all-versions libreoffice | + | <code user>apt list --all-versions <paquet></code> |
+ | |||
Cette commande est véritablement utile si vous utilisez des dépôts supplémentaires ou si vous utilisez plusieurs branches de Debian. | 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 | + | ==== Rechercher un paquet ==== |
- | La commande *search* recherche le(s) terme(s) donnée(s) et affiche les paquets correspondants. | + | La commande **search** recherche le(s) terme(s) donné(s) et affiche les paquets correspondants. |
- | apt search <terme> | + | <code user>apt search <terme></code> |
+ | |||
- | Utile quand veut installer un paquet dont on ne connaît pas le nom exact. | + | Utile quand on veut installer un paquet dont on ne connaît pas le nom exact. |
- | On pourra lancer la commande *show* pour de confirmer qu'il s'agit du bon paquet. | + | On pourra lancer la commande *show* pour confirmer qu'il s'agit du bon paquet. |
- | ### Mise à jour pour l’ensemble du système | + | ==== 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. | + | 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 | + | <code root>apt full-upgrade</code> |
+ | |||
On utilise généralement cette commande lors du basculement d'une version majeure de Debian à la suivante. | On utilise généralement cette commande lors du basculement d'une version majeure de Debian à la suivante. | ||
- | ## Ressources | + | ===== Astuce : ajouter l'autocompletion pour Debian 8 ===== |
+ | |||
+ | La version de ''apt'' de Debian Jessie ne supporte pas l'autocomplétion. Il est cependant possible d'en mettre en place via la création d'un fichier ''/usr/share/bash-completion/completions/apt'' contenant ceci : | ||
+ | |||
+ | <code file># Debian apt(8) completion -*- shell-script -*- | ||
+ | |||
+ | _apt() | ||
+ | { | ||
+ | local cur prev words cword | ||
+ | _init_completion || return | ||
+ | |||
+ | local special i | ||
+ | for (( i=0; i < ${#words[@]}-1; i++ )); do | ||
+ | if [[ ${words[i]} == @(list|search|show|update|install|remove|upgrade|full-upgrade|edit-sources|dist-upgrade|purge) ]]; then | ||
+ | special=${words[i]} | ||
+ | fi | ||
+ | done | ||
+ | |||
+ | if [[ -n $special ]]; then | ||
+ | case $special in | ||
+ | remove|purge) | ||
+ | if [[ -f /etc/debian_version ]]; then | ||
+ | # Debian system | ||
+ | COMPREPLY=( $( \ | ||
+ | _xfunc dpkg _comp_dpkg_installed_packages $cur ) ) | ||
+ | else | ||
+ | # assume RPM based | ||
+ | _xfunc rpm _rpm_installed_packages | ||
+ | fi | ||
+ | return 0 | ||
+ | ;; | ||
+ | *) | ||
+ | COMPREPLY=( $( apt-cache --no-generate pkgnames "$cur" \ | ||
+ | 2> /dev/null ) ) | ||
+ | return 0 | ||
+ | ;; | ||
+ | esac | ||
+ | fi | ||
+ | |||
+ | case $prev in | ||
+ | -c|--config-file) | ||
+ | _filedir | ||
+ | return 0 | ||
+ | ;; | ||
+ | -t|--target-release|--default-release) | ||
+ | COMPREPLY=( $( apt-cache policy | \ | ||
+ | command grep "release.o=Debian,a=$cur" | \ | ||
+ | sed -e "s/.*a=\(\w*\).*/\1/" | uniq 2> /dev/null) ) | ||
+ | return 0 | ||
+ | ;; | ||
+ | esac | ||
+ | |||
+ | if [[ "$cur" == -* ]]; then | ||
+ | COMPREPLY=( $( compgen -W '-d -f -h -v -m -q -s -y -u -t -b -c -o | ||
+ | --download-only --fix-broken --help --version --ignore-missing | ||
+ | --fix-missing --no-download --quiet --simulate --just-print | ||
+ | --dry-run --recon --no-act --yes --assume-yes --show-upgraded | ||
+ | --only-source --compile --build --ignore-hold --target-release | ||
+ | --no-upgrade --force-yes --print-uris --purge --reinstall | ||
+ | --list-cleanup --default-release --trivial-only --no-remove | ||
+ | --diff-only --no-install-recommends --tar-only --config-file | ||
+ | --option --auto-remove' -- "$cur" ) ) | ||
+ | else | ||
+ | COMPREPLY=( $( compgen -W 'list search show update install | ||
+ | remove upgrade full-upgrade edit-sources dist-upgrade | ||
+ | purge' -- "$cur" ) ) | ||
+ | fi | ||
+ | |||
+ | return 0 | ||
+ | } && | ||
+ | complete -F _apt apt | ||
+ | |||
+ | # ex: ts=4 sw=4 et filetype=sh | ||
+ | </code> | ||
+ | |||
+ | Merci à MicP pour le tuyau [[https://debian-facile.org/viewtopic.php?pid=177389#p177389 | sur le forum.]] ;-) | ||
+ | |||
+ | ===== Ressources ===== | ||
+ | |||
+ | Consulter le manuel de la commande **apt**: | ||
+ | |||
+ | <code user>man apt</code> | ||
- | Consulter le manuel de la commande *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]] | ||
- | man apt | + | ===== Lien vers le forum ===== |
- | * [Commandes aptitude, apt-get et apt](https://debian-handbook.info/browse/fr-FR/stable/sect.apt-get.html) | ||
- | * [Chapitre 2. Gestion des paquets Debian](https://www.debian.org/doc/manuals/debian-reference/ch02.fr.html) | ||
+ | * [[https://debian-facile.org/viewtopic.php?pid=177389#p177389 | Micp - L'autocompletion avec l'outil apt.]] |