web-dev-qa-db-fra.com

Puis-je supprimer apt avec apt?

Je sais que je peux utiliser apt-get remove <package> pour supprimer un programme.

Mais apt est un programme lui-même. Pourrais-je utiliser apt-get remove apt pour l'enlever, ou est-ce que cela deviendrait confus en cours de route?

45
Tim

APT vous permet de simuler vos commandes en utilisant l'option -s. Vous pouvez essayer vous-même en exécutant la commande apt-get -s remove apt (aucun Sudo requis).

Cela donne la sortie suivante:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  apturl-common xul-ext-ubufox
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  apt apt-utils apturl nautilus-share python3-software-properties
  software-properties-common software-properties-gtk ubuntu-desktop
  unattended-upgrades
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
  apt
0 upgraded, 0 newly installed, 9 to remove and 0 not upgraded.
Remv ubuntu-desktop [1.341]
Remv nautilus-share [0.7.3-1ubuntu5]
Remv apturl [0.5.2ubuntu9]
Remv software-properties-gtk [0.96.13.1]
Remv software-properties-common [0.96.13.1]
Remv python3-software-properties [0.96.13.1]
Remv unattended-upgrades [0.86.2ubuntu1]
Remv apt-utils [1.0.10.2ubuntu1]
Remv apt [1.0.10.2ubuntu1]

Donc, la réponse devrait être: oui, vous pouvez.

78
cauon

Vous pouvez...

Sudo apt-get remove apt
Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following packages will be REMOVED:
  apt apt-utils apturl nautilus-share python3-software-properties
  software-center software-properties-common software-properties-gtk
  ubuntu-desktop ubuntu-extras-keyring ubuntu-minimal unattended-upgrades
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
  apt
0 upgraded, 0 newly installed, 12 to remove and 0 not upgraded.
After this operation, 9,031 kB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
?] Yes, do as I say!
(Reading database ... 179817 files and directories currently installed.)
Removing ubuntu-desktop (1.327) ...
Removing nautilus-share (0.7.3-1ubuntu5) ...
Removing apturl (0.5.2ubuntu4) ...
dpkg: warning: while removing apturl, directory '/usr/lib/python3/dist-packages/AptUrl/gtk/backend' not empty so not removed
Removing software-properties-gtk (0.94) ...
dpkg: warning: while removing software-properties-gtk, directory '/usr/lib/python3/dist-packages/softwareproperties/gtk' not empty so not removed
Removing software-properties-common (0.94) ...
Removing python3-software-properties (0.94) ...
Removing unattended-upgrades (0.82.8) ...
Removing ubuntu-minimal (1.327) ...
Removing apt-utils (1.0.9.2ubuntu2) ...
Removing software-center (13.10-0ubuntu4.1) ...
Removing ubuntu-extras-keyring (2010.09.27) ...
OK
Removing apt (1.0.9.2ubuntu2) ...
Processing triggers for man-db (2.7.0.2-2) ...
Processing triggers for gconf2 (3.2.6-2ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for shared-mime-info (1.2-0ubuntu3) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu2) ...
Processing triggers for bamfdaemon (0.5.1+14.10.20140925-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for mime-support (3.55ubuntu1) ...
Processing triggers for dbus (1.8.8-1ubuntu2) ...
Processing triggers for libc-bin (2.19-10ubuntu2) ...

et sera averti que vous êtes sur le point de faire quelque chose de très destructeur. Je dois dire que ... la liste des paquets semble horrible pour un gain de place de moins de 6000 Ko: D

Il se termine mais il n'y a pas moyen de revenir en utilisant "apt-get". Ubuntu Software Center ne fonctionnera plus et vous devrez utiliser "dpkg" pour réinstaller un gestionnaire de paquets (et vous devrez également installer manuellement toutes les dépendances).

30
Rinzwind

Une fois, lorsque j’exécutais CoreUbuntu, j’ai installé un paquet buggy à partir de la source dont apt avait décidé obsolète apt. La prochaine fois que j'ai exécuté apt autoremove, je n'ai pas consulté la liste des logiciels à supprimer, et apt était dans la liste.

Imaginez ma surprise la prochaine fois que j'ai saisi apt install <package-name> et obtenu The program 'apt' is currently not installed. You can install it by typing: Sudo apt-get install apt.

Heureusement, pour une raison quelconque, autoremove n'a supprimé aucune des dépendances de apt et il ne me restait plus qu'à archiver wgetapt's .deb et de le réinstaller à l'aide de dpkg -i.


Comme indiqué dans les autres réponses, si vous supprimez aptwithapt, vous aurez plus de problèmes en raison des dépendances qu'il tente de résoudre.

Je trouve cela intéressant, mais c’est effectivement le cas (certainement pour Debian et peut-être Fedora/openSUSE dans une certaine mesure?) De nombreuses distributions modernes sont définies et construites en grande partie sur l’infrastructure fournie par le gestionnaire de paquets de leur choix.

12
cat

Techniquement, apt ne peut pas supprimer apt ... car apt ne sait pas comment supprimer, installer ou mettre à jour des paquets. Les tâches d'installation, de suppression, de mise à niveau et de configuration des packages sont laissées à dpkg. Bien que vous puissiez dire à apt de supprimer le paquet appelé "apt", il vérifie les dépendances inverses du paquet apt, prend note de ces paquets et ordonne à dpkg de les supprimer. Quel est ce qui peut être vu dans l'autreréponses .

Même sans apt, vous pouvez utiliser dpkg pour installer, supprimer ou mettre à jour des paquetages, mais il sera plus pénible de suivre les dépendances et les mises à niveau nécessaires, ce qui est la raison d'être d'apt.

5
Braiam

Bien sûr vous pouvez. Apt et dpkg sont des packages eux-mêmes, et ils sont conçus pour pouvoir être mis à jour via eux-mêmes, il existe donc des dispositions pour la suppression; sinon /var/lib/dpkg/info/dpkg.prerm et /var/lib/dpkg/info/dpkg.postrm n'auraient aucune raison d'exister :)

Si vous les supprimiez accidentellement d'une manière qui vous laissait sans dpkg, vous pouvez toujours décompresser manuellement l'archive .deb pour dpkg à moins que vous ne vous débarrassiez également de binutils, tar, gzip/bzip2.

--purge sur tous les paquets impliqués dans la chaîne d'outils apt pourrait vous donner des problèmes désagréables, cependant; difficile de dire ce qui possède certains fichiers dans /var/lib/dpkg. Si /var/lib/dpkg/status a été supprimé et qu'il n'y a pas de sauvegarde en cours, le gestionnaire de packages sera irréparable sur ce système.

1
rackandboneman