77 votes

Comment obtenir une liste des paquets installés retenus lors de la mise à jour ?

Récemment, j'ai eu besoin d'obtenir une liste des paquets installés sur mon système Ubuntu qui ont également été mis en attente de mise à niveau.

L'état "hold" pour un paquet signifie que lorsque le système d'exploitation est mis à niveau, le programme d'installation ne mettra pas non plus à niveau ces paquets, sauf si cela est explicitement indiqué dans les options.

Je cherche une solution en ligne de commande, mais je comprends que cela peut également être possible à partir de l'interface graphique.

97voto

heemayl Points 85741

Vous pouvez utiliser apt-mark :

apt-mark showhold

ceci montrera les paquets qui sont maintenus dans un état "hold" afin que le gestionnaire de paquets ne mette pas automatiquement à niveau les paquets.

De man apt-mark :

showhold
           showhold is used to print a list of packages on hold

21voto

Nathan Fig Points 3719

Utiliser dpkg

dpkg -l | grep "^hi"

El -l permet de lister tous les paquets qui sont ensuite transmis à grep.

L'expression régulière "^hi" signifie rechercher toutes les lignes qui commencent par "hi" qui sont les initiales de "hold" et "installed".

Par défaut, dpkg -l listera le statut, le nom du paquet, la version, l'architecture et une courte description.

3voto

DJCrashdummy Points 1851

Comme alternative, vous pouvez également utiliser dpkg --get-selections :

dpkg --get-selections | grep "\<hold$"

dpkg --get-selections liste l'état de tous les paquets installés et grep "\<hold$" ne montre que les lignes qui se terminent par le mot "hold".

Peut-être aussi intéressant, si vous recherchez des irrégularités - surtout si ce qui précède ne montre rien (d'utile), ce serait

dpkg --get-selections | grep --invert-match "\<install$"

cela montre toutes les lignes/paquets qui ne sont pas simplement installés.

0voto

abu_bua Points 9377

Dans les versions d'apt-mark > 2.4, vous devez utiliser la commande suivante :

apt-mark showhold

Il s'agit également d'un vieil outil aptitude fait un excellent travail en ligne de commande et vous pouvez facilement naviguer à travers les paquets en attente :

aptitude

Type u pour mettre à jour les paquets, puis appuyez sur g et vous verrez les paquets retenus.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X