
Nachdem ich installiert habePython 3.5und die folgenden Befehle ausgeführt habe, werden mein Terminal und viele andere Programme nicht mehr gestartet.
cd /usr/bin
sudo rm python3
sudo ln -s python3.5 python3
Wie kann ich die Standard-Python-Version wiederherstellen, um diese Probleme zu beheben?
Antwort1
Schritt 1: Öffnen eines Terminals
Sie sagten, Sie könnten kein Terminal mehr öffnen. Das liegt daran, dass der Standard-Terminalemulator in Ubuntu ist gnome-terminal
, der ohne einen funktionierenden nicht ausgeführt werden kann python3
, da dies eine seiner Abhängigkeiten ist:
$ apt-cache depends gnome-terminal | grep python
Depends: python3
Depends: python3-gi
Es gibt jedoch Alternativen:
Verwenden Sie einen anderen Terminalemulator:
Sie können einfach einen anderen Terminalemulator verwenden als
gnome-terminal
beispielsweisexterm
welches ebenfalls standardmäßig installiert sein sollte. Suchen Sie im Anwendungsobjektiv des Dashboards danach ( Super+ A) oder führen Sie es einfachxterm
über das HUD aus ( Alt+ F2).Es öffnet sich ein neues Terminalfenster, in dem Sie Ihre vorherigen Vorgänge rückgängig machen können. Es ist (meiner Meinung nach) weniger komfortabel als das Standardfenster
gnome-terminal
, erledigt seinen Job aber auf jeden Fall, ohne von Python-Komponenten abhängig zu sein:$ LANG=C apt-cache depends xterm | grep python $
Verwenden Sie ein TTY-Terminal:
Anstatt einen Terminalemulator (Terminalfenster in einer grafischen Umgebung) zu verwenden, können Sie auch vorübergehend zu einem echten Terminal (nur Konsole, keine Grafiken) wechseln, indem Sie Ctrl+ Alt+ F1(oder eine beliebige F [n]Taste mit n im Bereich von 1 bis 6) drücken.
CtrlMit + Alt+ F7(oder einer anderen F [n]Taste mit n im Bereich von 7 bis 12, abhängig von Ihren Benutzersitzungen) wechseln Sie zurück zur grafischen Oberfläche (normalerweise TTY7) .
CtrlIm TTY müssen Sie sich zunächst erneut anmelden, indem Sie Ihren Benutzernamen und Ihr Passwort eingeben. Danach funktioniert es wie bei einem normalen Terminal. Vergessen Sie nicht, sich anschließend mit + Doder dem Befehl wieder von der TTY-Sitzung abzumelden
exit
.
Schritt 2: Wiederherstellen des Originalspython3
Unabhängig davon, welche Methode Sie zum Erhalten eines Terminals verwendet haben, ist der folgende Reparaturschritt derselbe.
Sie müssen die Originaldatei wiederherstellen /usr/bin/python3
, die eigentlich ein symbolischer Link python3.4
(oder absoluter Pfad /usr/bin/python3.4
) war. Dies geschieht mit dem folgenden einfachen Befehl:
sudo ln -sf /usr/bin/python3.4 /usr/bin/python3
Antwort2
Sie können Python 3.4 unter Ubuntu nicht durch 3.5 ersetzen, da viele (System-)Anwendungen darauf angewiesen sind. Dazu gehört auch der Symlink python3
.
Sofern Sie nicht entfernt haben python3.4
, stellen Sie den ursprünglichen Symlink wieder her mit
cd /usr/bin
sudo rm python3
sudo ln -s python3.4 python3
Rufen Sie Python3.5 direkt auf mitpython3.5
Antwort3
Ich hatte das gleiche Problem und Folgendes hat bei mir funktioniert:
sudo update-alternatives --config python3
Auswahl 1
des Genres:
* 1 /usr/bin/python3.5 1 manual mode
Antwort4
Terminals und andere Anwendungen können nicht gestartet werden, da die neueste Version von Python3 auf Ihrem Ubuntu keinen symbolischen Link zu Python3 erstellt. Sie können dies umgehen, indem Sie auf folgende Weise einen symbolischen Link erstellen:
Überprüfen Sie die Version von Python3 in /usr/bin
:
ls /usr/bin | grep python
Wenn Sie die neueste Version des python3.5
symbolischen Links python3() auswählen, erhalten Sie Folgendes python3
:
sudo update-alternatives --config python3
Wählen Sie Ihre Version von python3 ( python3.5
) mit der Nummer. Bei Erfolg ist das Ergebnis
update-alternatives: using /usr/bin/python3.5 to provide /usr/bin/python3 (python3) in manual mode
Öffnen Sie Ihr Standardterminal oder starten Sie
wenn bei Punkt 3 ein Fehler vorliegt, wie zum Beispiel:
update-alternatives: warning: forcing reinstallation of alternatives /usr/bin/python3.7 because the python3 link group is broken
Bitte wiederholen Sie Punkt 3 und wählen Sie eine andere Version von python3
.