J'ai un scénario dans lequel j'aimerais supprimer un ensemble de packages qui peuvent ou non être installés, et j'aimerais apt-get pour supprimer ceux qui sont et ignorer silencieusement ceux qui ne le sont pas. Quelque chose comme:
apt-get remove foo bar baz
qui, si foo et bar étaient installés mais pas baz, supprimeraient foo et bar sans se plaindre de baz. Y a-t-il un moyen de faire cela?
Les choses que j'ai essayées n'ont pas fonctionné, avec cups-dbg comme mon bouc émissaire réellement installé à supprimer:
jcp@a-boyd:~$ sudo apt-get remove -y cups-dbg bogus-package
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package bogus-package
jcp@a-boyd:~$ sudo apt-get remove --ignore-missing cups-dbg bogus-package
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package bogus-package
jcp@a-boyd:~$ sudo apt-get remove --fix-broken cups-dbg bogus-package
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package bogus-package
Je sais que je pourrais le faire avec un script shell et de la dpkg --list
magie, mais j'aimerais éviter toute complexité qui n'est pas absolument nécessaire.
Réponses:
Revenir à un outil de niveau inférieur tel que dpkg est-il une option?
Pour supprimer les fichiers de configuration des packages, utilisez la purge comme ci-dessous
la source
J'utilise
apt-get remove --purge
(akaapt-get purge
) pour la dépendance qui suit avec une liste de packages. Pour gérer les packages qui n'existent pas, je filtre les packages qui ne sont pas installés avec le script suivant.la source
Pour Debian ≤ 9, il est possible d'utiliser simplement
aptitude
au lieu deapt-get
:Aptitude affiche des avertissements, mais continue néanmoins de supprimer vos packages:
Si vous souhaitez purger (supprimer les fichiers de configuration de package) plutôt que supprimer (conserver les fichiers de configuration), notez que
aptitude
purge uniquement les packages directement fournis, tandis que les dépendances inutilisées sont uniquement supprimées. Cependant, vous pouvez purger tous les packages supprimés dans une deuxième étape:la source
bogus-package
juste avait le mauvais nom. donc, au cas où nous aurions comme 500 paquets, il serait préférable d'analyser les faux paquets aussi et de faire quelques astuces (par exemple, des chiffres après le nom manquant, etc. donc, pouvez-vous s'il vous plaît donner quelques conseils sur la façon de le faire ..Couldn't find any package whose name or description matched 'QUX' Unable to apply some actions, aborting
Un autre petit 2 lignes si quelqu'un a besoin d'utiliser apt:
Explication:
la source