APT

<h1>Installation de paquets</h1>
<div class=”level2″>
<pre class=”code”>sudo apt-get install &lt;packet&gt; &lt;packet 2&gt; etc …</pre>
</div>
<h3 id=”verifier_la_version” class=”sectionedit4″>Vérifier la version</h3>
<div class=”level3″>

Avant de lancer l’installation, il est parfois utile de vérifier la version qui sera installée, les dépendances…:
<pre class=”code”>apt show &lt;nom_du_paquet&gt;</pre>
</div>
<h3 id=”installation_d_une_version_presente_dans_les_depots” class=”sectionedit5″>Installation d’une version présente dans les dépôts</h3>
<div class=”level3″>
<pre class=”code”>sudo apt-get install &lt;paquet&gt;=&lt;version&gt; -V</pre>
L’option <strong><code>=&lt;version&gt;</code></strong> passée à <strong><code>apt-get install</code></strong> permet d'<strong>installer la version souhaitée du paquet indiqué</strong>.

</div>
Très utile pour revenir à une version officielle d’un paquet (qui aurait été “upgradé à la main”).
<h3 id=”installation_avec_reponse_oui” class=”sectionedit6″>Installation avec réponse oui</h3>
<div class=”level3″>
<pre class=”code”>sudo apt-get install -y &lt;paquet(s)&gt;</pre>
L’option -y permet de répondre oui par avance aux demandes de confirmations. Utile pour une utilisation dans un script, par exemple.

</div>
<h3></h3>
<h3 id=”reparer_une_installation” class=”sectionedit7″>Réparer une installation</h3>
<div class=”level3″>

Bien que ce cas de figure soit un peu rare, il peut arriver qu’une dépendance vienne à manquer à un logiciel installé sur votre système.
La commande suivante permettra de résoudre le problème :
<pre class=”code”>sudo apt-get install -f</pre>
Que se passe-t-il si la dépendance n’est pas disponible dans les dépôts ?
<div class=”notetip”>Utilisée avec <code>install</code> ou <code>remove</code>, cette commande exclura le paquet spécifié pour rechercher une solution viable pour le système.
Exemple :</div>
</div>
<pre class=”code”>sudo apt-get -f install vlc</pre>
recherchera une solution pour faire fonctionner VLC media player sans corrompre le système.
<h3 id=”forcer_une_installation” class=”sectionedit8″>Forcer une installation</h3>
<div class=”level3″>

Il n’existe pas de solution sur apt-get pour forcer une installation. Dpkg a quelques options dans ce sens, mais qui ne résolvent pas toutes les situations pour autant.
<pre class=”code”>sudo dpkg -i –force-overwrite package.deb
sudo dpkg -i –force-all package.deb</pre>
</div>
<h3 id=”trouver_un_paquet” class=”sectionedit9″>Trouver un paquet</h3>
<div class=”level3″>

Pour rechercher un paquet dans vos dépôts, tapez simplement la commande suivante :
<pre class=”code”>apt-cache search &lt;word1 word2 …&gt;</pre>
L’option <code>search</code> passée à <code>apt-cache</code> permet de chercher les paquets contenant certains mots.
<div class=”noteclassic”>Les réponses dépendent de vos dépôts et peuvent donc différer d’un système à l’autre.</div>
<div class=”notetip”>

Pour rechercher un paquet installé, il faut utiliser dpkg, par exemple :
<pre class=”code”>dpkg -l NomDuPaquet</pre>
</div>
</div>
<h3 id=”obtention_des_codes_sources” class=”sectionedit10″>Obtention des codes sources</h3>
<div class=”level3″>
<pre class=”code”>apt-get source &lt;paquet(s)&gt;</pre>
L’option <code>source</code> passée à <code>apt-get</code> permet de <strong>télécharger les paquets de codes sources indiqués</strong>.

</div>
<strong><code>sudo</code></strong> n’est pas utilisé ici parce que ce n’est pas nécessaire. Le paquet sera enregistré dans votre <em>Dossier Personnel</em>.

Notez que “apt-get source” se sert des entrées “deb-src” dans le fichier <strong>/etc/apt/sources.list</strong> ou autres dans <strong>/etc/apt/sources.list.d</strong>.

L’instruction “apt-get source” va de pair avec “apt-get build-dep”, qui installera les dépendances du paquet. Exemple complet:
<pre class=”code”>apt-get install build-essential fakeroot
cd /tmp
apt-get source nano
apt-get build-dep nano
cd nano-2.2.6/
dpkg-buildpackage -rfakeroot -us -b</pre>
<h1>Suppression de paquets</h1>
<h3 id=”principe” class=”sectionedit12″>Principe</h3>
<pre class=”code”>sudo apt-get remove &lt;paquets(s)&gt;</pre>
<ul>
<li>L’option <code>remove</code> permet de <strong>désinstaller les paquets indiqués</strong>. <em>Ceci laisse toutefois en place les fichiers de configuration de ces paquets.</em></li>
</ul>
<pre class=”code”>sudo apt-get autoremove &lt;paquets(s)&gt;</pre>
<ul>
<li>L’option <code>autoremove</code> permet de <strong>désinstaller les paquets indiqués avec leurs dépendances logicielles</strong>. <em>Ceci laisse toutefois en place les fichiers de configuration de ces paquets.</em></li>
</ul>
<h3 id=”suppression_purge” class=”sectionedit13″>Suppression + purge</h3>
<div class=”level3″>
<pre class=”code”>sudo apt-get purge &lt;paquets(s)&gt;</pre>
<ul>
<li>L’action <code>purge</code>, passée à la commande <code>apt-get</code>, <strong>désinstalle les paquets indiqués </strong>et<strong> leurs fichiers de configuration.</strong> <em>Les fichiers de préférences, et les logs ne sont pas supprimés.</em></li>
</ul>
</div>
<pre class=”code”>sudo apt-get autoremove –purge &lt;paquets(s)&gt;</pre>
<ul>
<li>L’option <code>–purge</code>, passée à la commande <code>autoremove</code>, <strong>désinstalle les paquets indiqués, les dépendances logicielles et leurs fichiers de configuration</strong>. <em>Les fichiers de préférences, et les journaux (logs) ne sont pas supprimés.</em></li>
</ul>
<pre class=”code”>sudo apt-get autoremove –purge</pre>
<ul>
<li>L’option <code>–purge</code>, passée à la commande <code>autoremove</code> <strong>sans</strong> nom de paquet, <strong>désinstalle toutes les dépendances devenues inutiles et leurs fichiers de configuration</strong>. <em>Les fichiers de préférences, les journaux (logs) <sup><a id=”fnt__9″ class=”fn_top” href=”https://doc.ubuntu-fr.org/apt-get#fn__9″>)</a></sup> et ceux, des anciens noyaux, marqués “d’installation manuelle” ne sont pas supprimés.</em></li>
</ul>
<h3 id=”suppression_de_paquets_d_installation” class=”sectionedit14″>Suppression de paquets d’installation</h3>
<ul>
<li>APT conserve une copie de chaque paquet installé et désinstallé sur votre disque dur (dans le dossier <em>/var/cache/apt/archives</em>). Utiliser les options ci-dessous permet de récupérer de l’espace disque par le nettoyage correspondant à l’option.</li>
</ul>
<pre class=”code”>sudo apt-get clean</pre>
<ul>
<li>L’option <code>clean</code>, option radicale, <strong>supprime la totalité des paquets</strong> présents dans <em>/var/cache/apt/archives</em>. (<em>Notez que cela n’a aucun impact sur les paquets installés.</em>)</li>
</ul>
<pre class=”code”>sudo apt-get autoclean</pre>
L’option <code>autoclean</code> permet de <strong>supprimer les paquets</strong> présents dans <em>/var/cache/apt/archives</em> , mais <strong>en conservant ceux qui ont un équivalent dans les dépôts</strong>; par exemple, si <em>/var/cache/apt/archives</em> contient plusieurs versions du même logiciel, les plus anciennes, plus présentes dans les dépôts, seront supprimées, mais la version à jour (ayant un équivalent dans le dépôt) sera conservée. <em>Ceci vous permet de récupérer beaucoup d’espace disque</em>, mais moins toutefois qu’avec “clean”.
<ul>
<li>Afin de faire un véritable ménage sur le système, exécuter la commande suivante</li>
</ul>
<pre>apt purge $(dpkg –list |grep ‘^rc’ |awk ‘{print $2}’)</pre>
Explication de la commande :
<ul>
<li><strong>dpkg –list</strong> : liste tous les paquets présent sur le système</li>
<li><strong>grep ‘^rc’</strong> : cherche les paquets désinstallés mais pas purgés</li>
<li><strong>awk ‘{print $2}’</strong> : filtre l’affichage de la sortie de la commande précédente</li>
</ul>
&nbsp;
<p style=”text-align: right;”><a href=”https://doc.ubuntu-fr.org/apt-get”>Sources</a>
<a href=”https://memo-linux.com/debian-nettoyer-les-paquets-residuels/”>Sources</a></p>
&nbsp;