Comment annuler «yum remove python»

12

J'ai un VPS basé sur Centos 6 avec une connexion ssh. Voulant récemment installer python 2.7.2, j'ai courageusement couru:

yum remove python

qui a apparemment supprimé yum lui-même en cours d'écriture ou dépend de python.

Maintenant, je ne sais pas quoi faire et pour aggraver les choses, je suis un débutant Linux complet (ligne de commande ou autre).

La course à pied rpm -iv http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpmdonne:

Retrieving http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpm
Preparing packages for installation...
        package python-2.6.5-3.el6.x86_64 is already installed

et c'est un serveur x86_64 sans aucun doute car "uname -a" donne:

Linux xxxxxx 2.6.32-71.29.1.el6.x86_64 #1 SMP Mon Jun 27 19:49:27 BST 2011 x86_64 x86_64 x86_64   GNU/Linux

Encore une chose: ls /usr/bin/pyth* -ladonne:

lrwxrwxrwx 1 root root    6 Dec  4 20:31 python2 -> python
-rwxr-xr-x 2 root root 4864 Nov 12  2010 python2.6
-rwxr-xr-x 2 root root 4864 Nov 12  2010 python;4edbd894
Rabih Kodeih
la source
Merci, j'ai vu la même chose aujourd'hui. Gardez le calme et ne courez jamais miam effacer le python: keepcalmandcarryon.com/creator/?shortcode=qCsMlpyc
Arun Sangal

Réponses:

19

Choisissez un miroir dans la liste des miroirs CentOS 6 et installez les packages dont vous avez besoin à l'aide rpm. Vous auriez besoin de gérer les dépendances. Heureusement pour vous, j'ai une machine virtuelle assez nue avec CentOS 6 x86_64 installé.

J'ai pris un instantané de la machine virtuelle, j'ai couru yum remove pythonet je me suis amusé à traverser certaines dépendances circulaires. Résultat final:

# --nodeps: because of circular dependency between python and python-libs
rpm -i --nodeps http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-libs-2.6.5-3.el6.x86_64.rpm
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpm
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/pygpgme-0.1-18.20090824bzr68.el6.x86_64.rpm
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-pycurl-7.19.0-5.el6.x86_64.rpm 
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-urlgrabber-3.9.1-7.el6.noarch.rpm 
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/rpm-python-4.8.0-12.el6.x86_64.rpm 
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/yum-metadata-parser-1.1.2-14.1.el6.x86_64.rpm
# --nodeps: because of circular dependency between yum and yum-plugin-fastestmirror
rpm -i --nodeps http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.26-11.el6.noarch.rpm
rpm -i http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/yum-3.2.27-14.el6.centos.noarch.rpm

Remplacez le miroir que vous voulez. Assurez-vous également que l'architecture correspond. Cela devrait faire l'affaire cependant!

Oh encore une chose: si j'étais vous, je courrais un yum upgradedroit après avoir fini d'installer les RPM.

Belmin Fernandez
la source
Ce serait génial
Rabih Kodeih
Après avoir exécuté les premières commandes rpm, python est signalé comme une commande non reconnue: -bash: python: commande introuvable
Rabih Kodeih
1
Python ne fonctionnera pas tant que le fichier 2nd RPM n'est pas installé. Je déteste faire partie de "ceux" mais essayez de comprendre la commande avant de la coller. Peut-être qu'un man rpmest en règle.
Belmin Fernandez
J'ai exécuté la première série de 8 commandes, c'est-à-dire. Les deux derniers sont pour miam et ce que vous avez dit est évident. Bien que les exécuter à nouveau donne un message «déjà installé». Peut-être que ma structure de répertoire python est foirée ou quelque chose. Et au fait, après avoir installé yum de toute façon, exécuter yum donne: "-bash: / usr / bin / yum: / usr / bin / python: mauvais interpréteur: aucun fichier ou répertoire de ce type"
Rabih Kodeih
Exécutez rpm -iv http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpmet collez la sortie en tant que modification dans votre question. De plus, êtes-vous sûr d'exécuter x86_64? Exécutez uname -aet collez également la sortie de cela dans l'édition.
Belmin Fernandez