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-get [21/04/2014 20:59] 127.0.0.1 modification externe |
doc:systeme:apt:apt-get [26/01/2016 15:39] smolski [Gérer son système globalement] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : Utilisation de l'outil d'installation de paquet **apt-get** | * Objet : Utilisation de l'outil d'installation de paquet **apt-get** | ||
- | * Niveau requis : DÉBUTANT. Voir le même outil mais moins simple d'utilisation pour les débutants qui débutent : [[:doc:systeme:apt:aptitude]]. | + | * Niveau requis : {{tag>débutant avisé}} |
* Commentaires : //Rechercher, installer ou mettre à jour les logiciels et autres paquets disponibles.// | * Commentaires : //Rechercher, installer ou mettre à jour les logiciels et autres paquets disponibles.// | ||
- | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) , [[:doc:systeme:apt|la gestion et l'administration des dépôts Debian.]]. | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) |
- | * Le retour sur le forum est [[http://debian-facile.org/viewtopic.php?id=7368 | ici]] //N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !// | + | * Suivi : {{tag>à-compléter}} |
+ | * Création par [[user>smolski]] 09-09-2013 | ||
+ | * Testé par [[user>smolski]] le 09-09-2013 | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=7368 | ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
Ligne 11: | Ligne 14: | ||
**apt-get** est un gestionnaire de paquets en [[doc:systeme:console|console]]. \\ | **apt-get** est un gestionnaire de paquets en [[doc:systeme:console|console]]. \\ | ||
- | À ce titre, c'est un outil qui permet de vous **informer**, d'**installer**, de supprimer et de **mettre à jour** vos paquets. \\ | + | À ce titre, c'est un outil qui permet de vous **informer**, d'**installer**, de **supprimer** et de **mettre à jour** vos paquets. \\ |
- | De façon général, il gère la mise à jour de votre [[doc:systeme:infos-systeme|système]] et s'utilise pour cela en [[:doc:systeme:superutilisateur | super-utilisateur]] alors qu'il peut vous //informer// sur ceux-ci pareillement en //simple utilisateur//. | + | De façon général, il gère la mise à jour de votre [[doc:systeme:infos-systeme|système]] et s'utilise pour cela en [[:doc:systeme:superutilisateur | super-utilisateur]] alors qu'il vous //informe// sur ceux-ci en //simple utilisateur//. |
- | **Nota important :** \\ | + | <note important>**Nota important :** \\ |
- | N'hésitez pas à respecter l'usage de //simple utilisateur// lorsque cela cela vous est permit, quitte à ouvrir une seconde session console, bien des erreurs vous seront évitées ainsi, sûr ! 8-) | + | N'hésitez pas à respecter l'usage de //simple utilisateur// lorsque cela cela vous est permit, quitte à ouvrir une seconde session console, bien des erreurs vous seront évitées ainsi, sûr ! 8-)</note> |
- | ''apt-get'' en ligne de commande, équivaut (//en mieux//) à [[doc:systeme:apt:synaptic:sources|Synaptic]] en graphique ! | + | **apt-get** en ligne de commande, équivaut (//en mieux//) à [[doc:systeme:apt:synaptic:sources|Synaptic]] en graphique ! |
- | Bien sûr, les modifications apportées par l'un sont reconnues parfaitement par l'autre ainsi que par [[:doc:systeme:apt:aptitude | aptitude]] et vice et versa entre tous ces outils. | + | <note tip>Bien sûr, les modifications apportées par l'un sont parfaitement reconnues par l'autre ainsi que par [[:doc:systeme:apt:aptitude | aptitude]] et vice et versa entre tous ces outils.</note> |
Vous pouvez utiliser la plupart des commandes décrites dans la commande ''apt-get'' avec la commande ''aptitude''. \\ | Vous pouvez utiliser la plupart des commandes décrites dans la commande ''apt-get'' avec la commande ''aptitude''. \\ | ||
- | Voir : | + | * Voir aussi [[:doc:systeme:apt:aptitude | aptitude]]. Moins simple d'utilisation pour les débutants qui débutent. |
- | * Voir le tuto : [[:doc:systeme:apt:aptitude | Aptitude]] | + | |
===== Mettre à jour (Update) ===== | ===== Mettre à jour (Update) ===== | ||
Cette opération a deux buts bien précis : | Cette opération a deux buts bien précis : | ||
+ | - Rechercher les méta-données d'une archive depuis l’archive distante. | ||
+ | - Reconstruire et mettre à jour les méta-données locales pour qu'elles puissent être utilisées par APT. | ||
- | \\ | + | <code root>apt-get update</code> |
- | 1. Rechercher les méta-données d'une archive depuis l’archive distante. | + | <note important>Si vous n'avez pas faites une mise à jour depuis plus de 24H, vous devez impérativement l'exécuter avant toute installation.</note> |
- | \\ | + | C'est une précaution indispensable dans le cas d'une [[doc:systeme:apt:sources.list|testing ou unstable]] où les mises à jour sont très fréquentes (lire quotidienne). |
- | 2. Reconstruire et mettre à jour les méta-données locales pour qu'elles puissent être utilisées par APT. | + | |
- | | + | __Remarque :__ on a parfois besoin d'installer la version d'un paquet qui n'est plus présente dans les dépôts. On peut alors utiliser une image des dépôts prises à un moment précis : un snapshot. |
- | Si vous n'avez pas faites une mise à jour depuis plus de 24H, vous devez impérativement l'exécuter avant tout installation. C'est une précaution indispensable dans le cas d'une testing ou unstable où les mises à jour sont très fréquentes (lire quotidienne). | + | |
- | <code root> | + | ==== --fix-broken ==== |
- | apt-get update</code> | + | |
+ | Voir dans le man apt-get : | ||
+ | <code>-f --fix-broken : cette option demande de réparer un système où existent</code> | ||
+ | |||
+ | == Utilisation == | ||
+ | <code root>apt-get install -f</code> | ||
===== Installation d'un Logiciel ===== | ===== Installation d'un Logiciel ===== | ||
Ligne 42: | Ligne 51: | ||
apt-get install LeNomDuLogiciel</code> | apt-get install LeNomDuLogiciel</code> | ||
- | Pour plus de précaution, vous pouvez ajouter l'option -s (comme simulation) pour simuler l'installation du logiciel, ainsi vous pourrez contrôler les éventuels logiciels/dépendances installés ou désinstallés. | + | Pour plus de précaution, vous pouvez ajouter l'option **-s** (comme simulation) pour simuler l'installation du logiciel, ainsi vous pourrez contrôler les éventuels logiciels & dépendances installées ou désinstallées. |
<code user> | <code user> | ||
apt-get install -s lenomdulogiciel</code> | apt-get install -s lenomdulogiciel</code> | ||
Ligne 51: | Ligne 60: | ||
apt-get remove lenomdulogiciel</code> | apt-get remove lenomdulogiciel</code> | ||
- | Pour une désinstallation complète (avec les fichiers de configurations) vous pouvez ajouter l'option --purge | + | Pour une désinstallation complète (avec les fichiers de configurations) vous pouvez ajouter l'option **%%-%%-purge** |
<code root> | <code root> | ||
apt-get remove --purge nomdulogiciel</code> | apt-get remove --purge nomdulogiciel</code> | ||
Ligne 57: | Ligne 66: | ||
===== Nettoyer le cache ===== | ===== Nettoyer le cache ===== | ||
- | Les paquets téléchargés avant installation sont stockés dans ///var/cache/apt/archives//. Ils y restent ad vitam aeternam. | + | Les paquets téléchargés avant installation sont stockés dans **/var/cache/apt/archives**. Ils y restent ad vitam aeternam. |
- | Ce dossier peut donc rapidement devenir encombrant et faire plusieurs Giga-octets. Faites donc dans un [[:doc:systeme:terminal | terminal]] user un : | + | Ce dossier peut donc rapidement devenir encombrant et faire plusieurs Giga-octets. Utilisez [[doc:systeme:du|la commande du]] dans un [[:doc:systeme:terminal | terminal]] user ainsi : |
<code user> | <code user> | ||
du -h /var/cache/apt/archives</code> | du -h /var/cache/apt/archives</code> | ||
Ligne 76: | Ligne 85: | ||
apt-get clean</code> | apt-get clean</code> | ||
- | Depuis lenny, il existe l'option suivante : | + | <note tip>Depuis lenny, il existe l'option suivante : <code root> apt-get --purge autoremove</code></note> |
- | <code root> | + | |
- | apt-get --purge autoremove</code> | + | |
qui supprime les paquets installés automatiquement et devenus inutiles. | qui supprime les paquets installés automatiquement et devenus inutiles. | ||
- | D'après Thom1, merci ! | + | //D'après //**Thom1**//, merci !// |
===== Se renseigner sur les paquets ===== | ===== Se renseigner sur les paquets ===== | ||
- | Voir : | ||
* [[:doc:systeme:apt:apt-cache | apt-cache - se renseigner sur les paquets]] | * [[:doc:systeme:apt:apt-cache | apt-cache - se renseigner sur les paquets]] | ||
===== Gérer son système globalement ===== | ===== Gérer son système globalement ===== | ||
- | **Mise à jour des logiciels installés sur le système :** | + | Si tout se passe bien, et qu'on est en 100% stable, il ne devrait jamais y avoir de différence entre upgrade et dist-upgrade, sauf pour les mises à jour entre différentes stables (voir [[doc:migrer|la migration pas à pas]]) |
+ | |||
+ | ==== Mise à jour des logiciels ==== | ||
+ | |||
+ | Mise à jour des logiciels installés sur le système : | ||
<code root> | <code root> | ||
apt-get upgrade</code> | apt-get upgrade</code> | ||
- | **Mise à jour du système :** | + | === Utilisation === |
+ | |||
+ | upgrade ne supprime pas les paquets qui entravent les mises à jour mais il marque quand même les dépendances inutiles comme //à supprimer// et qui seront supprimées définitivement par la commande //autoremove// et du coup, les mises à jour peuvent être partielles mais au moins, on est sûr qu'il ne vire aucun paquet qu'on utilise. | ||
+ | |||
+ | upgrade va essayer de mettre à jour ce qu'il peut sans rien casser, il est plus sûr pour les débutants qui n'ont pas le réflexe de lire la liste des paquets supprimés. | ||
+ | |||
+ | dixit le captnfab sur le forum df : | ||
+ | * [[https://debian-facile.org/viewtopic.php?pid=159625#p159625]] | ||
+ | |||
+ | ==== Mise à jour du système ==== | ||
<code root> | <code root> | ||
apt-get dist-upgrade</code> | apt-get dist-upgrade</code> | ||
+ | === Utilisation === | ||
+ | |||
+ | Le **dist-upgrade** de apt-get est très mal nommé car il signifie en fait « mettre à jour le plus important, quitte à virer ce qui gêne ». Il est donc indispensable pour une migration réussie et alors vivement recommandé par debian. \\ | ||
+ | |||
+ | Sinon, dans le cours des mises à jour de la même stable, il faut lire attentivement ce qui s'écrit avant de valider, quitte à passer d'abord par un upgrade et finir le travail de mise à jour à la main. | ||
+ | |||
+ | Pour ce qui n'est pas la branche stable, utiliser [[doc:systeme:apt:aptitude|aptitude]] est le mieux. | ||
===== Gestion Avancée EXPERT ===== | ===== Gestion Avancée EXPERT ===== | ||
==== Gestion des paquets "recommends" ==== | ==== Gestion des paquets "recommends" ==== | ||
- | apt a l'habitude de gérer les paquets marqués //**recommandés**// comme des paquets //**Dépendants**//. | + | **apt** a l'habitude de gérer les paquets marqués //**recommandés**// comme des paquets //**dépendants**//. |
- | Si cela est intéressant dans certains cas, c'est parfois pénible puisque cela installe des tas de truc que l'on ne souhaite pas vraiment. Voici dans la manière de contourner ce petit problème. | + | Si cela est intéressant dans certains cas, c'est parfois pénible puisque cela installe des tas de truc que l'on ne souhaite pas vraiment. \\ |
+ | Voici la manière de contourner ce petit problème. | ||
=== Ponctuellement === | === Ponctuellement === | ||
Ligne 114: | Ligne 142: | ||
=== Systématiquement === | === Systématiquement === | ||
- | Voir : [[:doc:systeme:apt:apt.conf | le fichier apt.conf]] | + | En modifiant : [[:doc:systeme:apt:apt.conf | le fichier apt.conf]] |
==== Forcer l'installation d'un paquet ==== | ==== Forcer l'installation d'un paquet ==== | ||
Ligne 123: | Ligne 151: | ||
Depuis une installation **stable** prioritaire forcer un paquet des **backports** : | Depuis une installation **stable** prioritaire forcer un paquet des **backports** : | ||
- | <code root> | + | <code root>apt-get install -t jessie-backports le_nom_du_paquet</code> |
- | apt-get install -t wheezy-backports le_nom_du_paquet</code> | + | |
==== Bloquer la mise à jour d'un paquet ==== | ==== Bloquer la mise à jour d'un paquet ==== | ||
- | Modifier le fichier **/etc/apt/preferences** (si le fichier n'existe pas, le créer) pour y insérer les lignes suivantes: | + | Modifier le fichier [[doc:systeme:apt:pinning|/etc/apt/preferences]] (si le fichier n'existe pas, le créer) pour y insérer les lignes suivantes: |
<file apt_preferences>Package: nom_du_paquet | <file apt_preferences>Package: nom_du_paquet | ||
Pin: version du paquet à conserver | Pin: version du paquet à conserver | ||
Pin-priority: 1001</file> | Pin-priority: 1001</file> | ||
- | La Priorité du Pin à 1001 bloque les futures mises à jour :-) | + | |
+ | La Priorité du Pin à **1001** bloque les futures mises à jour :-) | ||
== Exemple == | == Exemple == | ||
- | Si par exemple vous souhaiter conserver la version 0.8.8 de [[:doc:media:kaffeine|kaffeine]], vous indiquerez dans **/etc/apt/preferences** | + | Si par exemple vous souhaitez conserver la version 0.8.8 de [[:doc:media:kaffeine|kaffeine]], vous indiquerez dans **/etc/apt/preferences** |
<file apt_preferences>Package: kaffeine | <file apt_preferences>Package: kaffeine | ||
Ligne 146: | Ligne 174: | ||
<code user>apt-cache policy kaffeine</code> | <code user>apt-cache policy kaffeine</code> | ||
- | === Une méthode plus simple (toujours avec le paquet kaffeine) === | + | === Une méthode plus simple === |
+ | Toujours avec le paquet //kaffeine// pris en exemple((Voir [[doc:systeme:apt:dpkg|dpkg]] - [[doc:systeme:grep|grep]] - [[doc:programmation:shell:pipe|pipe]])) : | ||
<code root>echo "kaffeine hold" | dpkg --set-selections</code> | <code root>echo "kaffeine hold" | dpkg --set-selections</code> | ||
- | Pour vérifier que le paquet n'a plus le satut install mais hold : | + | |
+ | Pour vérifier que le paquet n'a plus le statut **install** mais **hold** : | ||
<code user>dpkg --get-selections | grep kaffeine</code> | <code user>dpkg --get-selections | grep kaffeine</code> | ||
devrait répondre : | devrait répondre : | ||
Ligne 158: | Ligne 188: | ||
[[http://www.mail-archive.com/debian-user-french@lists.debian.org/msg92973.html|Source]] | [[http://www.mail-archive.com/debian-user-french@lists.debian.org/msg92973.html|Source]] | ||
- | Remplacer //kaffeine// par le paquet que vous voulez bloquer. ;-) | + | Remplacer //kaffeine// par le paquet que vous voulez modifier. ;-) |
=== Une méthode encore plus simple === | === Une méthode encore plus simple === | ||
Ligne 166: | Ligne 196: | ||
==== Télécharger un paquet deb sans l'installer ==== | ==== Télécharger un paquet deb sans l'installer ==== | ||
- | deux possibilités s'offrent à vous : | + | Deux possibilités s'offrent à vous : |
<code user> | <code user> | ||
apt-get download le_paquet</code> | apt-get download le_paquet</code> | ||
- | dans ce cas le paquet seul sera téléchargé dans votre répertoire courant. | + | Dans ce cas le paquet seul sera téléchargé dans votre répertoire courant. |
Ou : | Ou : | ||
- | <code root> | + | <code root>apt-get clean</code> |
- | apt-get install -d</code> | + | et |
+ | <code root>apt-get install -d</code> | ||
Ici, le paquet et toutes ses dépendances seront téléchargés dans le répertoire /var/cache/apt/archives/ et vous trouverez le tout au format deb. | Ici, le paquet et toutes ses dépendances seront téléchargés dans le répertoire /var/cache/apt/archives/ et vous trouverez le tout au format deb. | ||
- | ==== Installer un paquet depuis un dépôt Snapshot ==== | + | ==== Snapshot ==== |
+ | |||
+ | Pour installer la version d'un paquet qui n'est plus présente dans les dépôts on utilise une image des dépôts prise à un moment précis : un **snapshot**. | ||
* [[doc:systeme:apt:debian-snapshot | Installer un paquet depuis un dépôt Snapshot ]] | * [[doc:systeme:apt:debian-snapshot | Installer un paquet depuis un dépôt Snapshot ]] | ||
==== Installer un paquet source ==== | ==== Installer un paquet source ==== | ||
+ | Il faut vous assurer au préalable que votre fichier [[:doc:systeme:apt:sources.list | source.list]] soit correctement rempli avec l'adresse des **dépôts** contenant les paquets sources (classiquement les noms de ces dépôts commencent par **deb-src**). | ||
+ | |||
+ | Cette commande vous permettra de //télécharger// les sources d'un paquet debian : | ||
<code user> | <code user> | ||
apt-get source le-paquet-source</code> | apt-get source le-paquet-source</code> | ||
- | cette commande vous permettra de télécharger les sources d'un paquet debian. | + | Par defaut, le paquet est décompressé une fois téléchargé. \\ |
- | + | Si vous souhaitez le garder en *.tar.gz, passez le paramètre **%%-%%-download-only** à la commande ainsi : | |
- | Il faut vous assurer au préalable que votre fichier [[:doc:systeme:apt:sources.list | source.list]] est correctement rempli avec l'adresse des depots contenant les paquets sources (classiquement les noms de ces dépôts commencent par deb-src). | + | |
- | + | ||
- | Par defaut, le paquet est décompressé une fois téléchargé. Si vous souhaitez le garder en *.tar.gz, passez le paramètre --download-only à la commande : | + | |
<code user> | <code user> | ||
apt-get source --download-only le-paquet-source</code> | apt-get source --download-only le-paquet-source</code> | ||
- | Si vous voulez compiler directement et automatiquement le paquet après son téléchargement, passez l'option //--compile// à la commande : | + | Si vous voulez compiler directement et automatiquement le paquet après son téléchargement, passez l'option **%%-%%-compile** à la commande : |
<code user> | <code user> | ||
apt-get source --compile le-paquet-source</code> | apt-get source --compile le-paquet-source</code> | ||
- | Assurez vous au préalable d'avoir installé les librairies nécessaires à la compilation du paquet. Pour ce faire, utilisez la commande | + | Assurez vous au préalable d'avoir installé les librairies nécessaires à la compilation du paquet. Pour ce faire, utilisez la commande : |
<code root> | <code root> | ||
apt-get build-dep le-paquet</code> | apt-get build-dep le-paquet</code> | ||
Ligne 206: | Ligne 239: | ||
==== Choisir une image kernel ==== | ==== Choisir une image kernel ==== | ||
- | Pour connaître les **noyaux les plus récents** qui existent(([[:doc:systeme:apt:apt-cache]])) en user tapez : | + | Pour connaître les **noyaux les plus récents** disponibles(([[:doc:systeme:apt:apt-cache]])) en user tapez : |
<code user> | <code user> | ||
apt-cache search linux-image</code> | apt-cache search linux-image</code> | ||
Ligne 214: | Ligne 247: | ||
apt-get install linux-image-que-t-a-choisi</code> | apt-get install linux-image-que-t-a-choisi</code> | ||
- | * Voir : [[:doc:systeme:grub2:detail | Le grub]] | + | * Voir : [[:doc:systeme:grub2:detail | Le grub2]] |
- | hop la LOL Et c'est freddec qui le dit ! | + | //hop là LOL Et c'est //**freddec**// qui le dit !// |
=== Exemple === | === Exemple === | ||
Ligne 223: | Ligne 256: | ||
<code user> | <code user> | ||
apt-cache search linux-image | grep 32</code> | apt-cache search linux-image | grep 32</code> | ||
- | <file bash> | + | <file config retour de la commande> |
linux-headers-2.6.32-5-amd64 - Header files for Linux 2.6.32-5-amd64 | linux-headers-2.6.32-5-amd64 - Header files for Linux 2.6.32-5-amd64 | ||
linux-headers-2.6.32-5-openvz-amd64 - Header files for Linux 2.6.32-5-openvz-amd64 | linux-headers-2.6.32-5-openvz-amd64 - Header files for Linux 2.6.32-5-openvz-amd64 | ||
Ligne 243: | Ligne 276: | ||
linux-image-2.6.32-5-amd64 | linux-image-2.6.32-5-amd64 | ||
- | Merci à **bestel74** d'avoir aidé à la création de cet exemple sur le forum df ici : | + | //Merci à //**bestel74**// d'avoir aidé à la création de cet exemple sur le forum df ici// : |
* http://debian-facile.org/forum/viewtopic.php?pid=24029#p24029 | * http://debian-facile.org/forum/viewtopic.php?pid=24029#p24029 |