So machen Sie „yum remove python“ rückgängig

12

Ich habe ein Centos 6-basiertes VPS mit einer SSH-Verbindung. Als ich kürzlich Python 2.7.2 installieren wollte, lief ich tapfer:

yum remove python

was anscheinend entfernt yum selbst geschrieben wird oder von python abhängt.

Jetzt weiß ich nicht, was ich tun soll und was noch schlimmer ist, ich bin ein kompletter Linux-Neuling (Kommandozeile oder anders).

Laufen rpm -iv http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpmgibt:

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

und es ist ein x86_64 Server, der keine Frage dazu gibt, wie "uname -a":

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

Eins noch: ls /usr/bin/pyth* -lagibt:

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
quelle
Danke, ich habe heute dasselbe gesehen. Behalten Sie Ruhe und führen Sie niemals yum erase Python aus: keepcalmandcarryon.com/creator/?shortcode=qCsMlpyc
Arun Sangal

Antworten:

19

Wählen Sie einen Spiegel aus der Liste der CentOS 6-Spiegel aus und installieren Sie die benötigten Pakete rpm. Sie müssten sich mit Abhängigkeiten befassen. Zum Glück habe ich eine ziemlich nackte VM mit CentOS 6 x86_64 installiert.

Ich machte einen Schnappschuss von der VM, lief yum remove pythonund hatte Spaß daran, einige zirkuläre Abhängigkeiten zu durchlaufen. Endergebnis:

# --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

Ersetzen Sie den gewünschten Spiegel. Stellen Sie außerdem sicher, dass die Architektur übereinstimmt. Das sollte aber reichen!

Noch eine Sache: Wenn ich Sie wäre, würde ich yum upgradedirekt nach der Installation der RPMs eine ausführen .

Belmin Fernandez
quelle
Das wäre großartig
Rabih Kodeih
Nach dem Ausführen der ersten rpm-Befehle wird Python als nicht erkannter Befehl gemeldet: -bash: Python: Befehl nicht gefunden
Rabih Kodeih
1
Python funktioniert erst, wenn die 2. RPM-Datei installiert ist. Hasse es, einer von "denen" zu sein, aber versuche den Befehl zu verstehen, bevor du ihn einfügst. Vielleicht man rpmist a in Ordnung.
Belmin Fernandez
Ich habe alle ersten 8 Befehle ausgeführt. Die letzten beiden sind für yum und was Sie gesagt haben, ist offensichtlich. Wenn Sie sie erneut ausführen, wird die Meldung "Bereits installiert" angezeigt. Vielleicht ist meine Python-Verzeichnisstruktur durcheinander oder so. Übrigens, nach der Installation von yum gibt das Ausführen von yum Folgendes: "-bash: / usr / bin / yum: / usr / bin / python: Schlechter Interpreter: Keine solche Datei oder kein solches Verzeichnis"
Rabih Kodeih
Führen Sie rpm -iv http://centos.mirrors.hoobly.com/6.0/os/x86_64/Packages/python-2.6.5-3.el6.x86_64.rpmdie Ausgabe aus und fügen Sie sie als Bearbeitung für Ihre Frage ein. Sind Sie außerdem sicher, dass Sie x86_64 ausführen? Führen Sie uname -adie Ausgabe aus und fügen Sie sie bitte auch in die Bearbeitung ein.
Belmin Fernandez