Je sais que je peux utiliser apt-get remove
pour supprimer un programme.
Mais apt
est un programme lui-même. Pourrais-je utiliser apt-get remove apt
pour le supprimer, ou serait-il confus en cours de route?
Je sais que je peux utiliser apt-get remove
pour supprimer un programme.
Mais apt
est un programme lui-même. Pourrais-je utiliser apt-get remove apt
pour le supprimer, ou serait-il confus en cours de route?
APT vous permet de simuler vos commandes en utilisant l'option -s
. Vous pouvez essayer par vous-même, en lançant la commande apt-get -s remove apt
(pas besoin de sudo
).
Cela renvoie la sortie suivante :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
apturl-common xul-ext-ubufox
Utilisez 'apt-get autoremove' pour les supprimer.
Les paquets suivants seront ENLEVÉS :
apt apt-utils apturl nautilus-share python3-software-properties
software-properties-common software-properties-gtk ubuntu-desktop
unattended-upgrades
ATTENTION : Les paquets essentiels suivants vont être supprimés.
Cela NE doit PAS être fait sauf si vous savez exactement ce que vous faites !
apt
0 mis à jour, 0 nouvellement installés, 9 à enlever et 0 non mis à jour.
Supp ubuntu-desktop [1.341]
Supp nautilus-share [0.7.3-1ubuntu5]
Supp apturl [0.5.2ubuntu9]
Supp software-properties-gtk [0.96.13.1]
Supp software-properties-common [0.96.13.1]
Supp python3-software-properties [0.96.13.1]
Supp unattended-upgrades [0.86.2ubuntu1]
Supp apt-utils [1.0.10.2ubuntu1]
Supp apt [1.0.10.2ubuntu1]
Donc la réponse est : oui, vous le pouvez.
Et que vous serez averti que vous êtes sur le point de faire quelque chose de très destructeur. Je dois dire ... la liste des packages semble horrifique pour un espace économique de moins de 6000 ko :D
Il se termine mais il n'y a aucun moyen de revenir en arrière en utilisant "apt-get". Ubuntu Software Center ne fonctionnera plus et vous devrez utiliser "dpkg" pour réinstaller un gestionnaire de paquets (et également installer manuellement toutes les dépendances).
Une fois, à l'époque où je faisais tourner CoreUbuntu, j'ai installé un paquet buggy à partir de la source que apt
a décidé d'obsolette apt
. La prochaine fois que j'ai exécuté apt autoremove
, je n'ai pas réellement regardé la liste des logiciels à supprimer et apt
était dans la liste.
Imaginez ma surprise la prochaine fois que j'ai tapé apt install
et que j'ai obtenu Le programme 'apt' n'est actuellement pas installé. Vous pouvez l'installer en tapant : sudo apt-get install apt
.
Heureusement, pour une raison quelconque, autoremove
n'a pas supprimé toutes les dépendances de apt
donc tout ce que j'avais à faire était de wget
l'archive .deb
de apt
et de le réinstaller en utilisant dpkg -i
.
Comme le montrent les autres réponses, si vous supprimez apt
avec apt
, vous aurez plus de problèmes à cause des dépendances qu'il tente de résoudre.
Je trouve cela intéressant mais il est en effet le cas que (certainement pour Debian, et peut-être Fedora/openSUSE dans une certaine mesure?) de nombreuses distributions modernes sont définies et construites largement sur l'infrastructure fournie par leur gestionnaire de paquets de choix.
Techniquement, apt ne peut pas supprimer apt... car apt ne sait pas comment supprimer, installer ou mettre à jour les paquets. Les tâches d'installation, de suppression, de mise à jour et de configuration des paquets sont laissées à dpkg. Bien que vous puissiez demander à apt de supprimer le paquet appelé "apt", ce qu'il fait est de vérifier les dépendances inverses du paquet apt, de prendre note de ces paquets et d'ordonner à dpkg de les supprimer. Ce qui peut être vu dans les autres réponses.
Même sans apt, vous pouvez utiliser dpkg pour installer, supprimer ou mettre à jour des paquets, simplement il sera plus douloureux de suivre les dépendances et les mises à jour nécessaires, ce qui est la raison d'être d'apt.
Bien sûr, vous le pouvez. Apt et dpkg sont eux-mêmes des packages, et ils sont conçus pour pouvoir être mis à jour via eux-mêmes, donc il existe des dispositions pour la suppression ; sinon /var/lib/dpkg/info/dpkg.prerm
et /var/lib/dpkg/info/dpkg.postrm
n'auraient pas de raison d'exister :)
Si vous les avez accidentellement supprimés d'une manière qui vous a laissé sans dpkg, vous pourriez toujours décompresser manuellement l'archive .deb de dpkg à moins que vous n'ayez également supprimé binutils, tar, gzip/bzip2.
--purge
sur n'importe quels packages impliqués dans la chaîne d'outils apt pourrait vous causer des problèmes, cependant ; il est difficile de savoir qui possède certains fichiers dans /var/lib/dpkg
. Si /var/lib/dpkg/status
a été supprimé et qu'il n'y avait pas de sauvegarde actuelle, alors oui, le gestionnaire de packages serait irréparable sur ce système.
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.