it-swarm.com.de

Wie aktiviere ich die X11-Weiterleitung in einer PyCharm-SSH-Sitzung?

Die Frage

Ich versuche, X11-Weiterleitung über das PyCharm SSH-Terminal zu aktivieren, das über ausgeführt werden kann

"Tools -> Start SSH session..."

Leider scheint es keine Möglichkeit zu geben, die Flags so festzulegen, wie ich es in meiner Shell tun würde, um die X11-Weiterleitung zu aktivieren:

ssh -X [email protected]

Kennen Sie eine clevere Möglichkeit, dies zu erreichen?


Aktuelle schmutzige Lösung

Der einzige dreckige Hack, den ich gefunden habe, ist, eine externe SSH-Verbindung mit X11-Weiterleitung zu öffnen und dann die Umgebungsvariable manuell zu aktualisieren DISPLAY.

Zum Beispiel kann ich auf meiner externen SSH-Sitzung ausführen:

[email protected]:$ echo $DISPLAY
localhost:10.0

Und dann auf meinem PyCharm-Terminal einstellen:

export DISPLAY=localhost:10.0

oder aktualisieren Sie die Variable DISPLAY in Run/Debug Configuration , wenn ich das Programm über die GUI ausführen möchte.

Allerdings mag ich wirklich nicht diese Lösung, ein externes ssh-Terminal zu verwenden und die DISPLAY Variable manuell zu aktualisieren, und ich bin sicher, es gibt einen besseren Weg, dies zu erreichen!

Jede Hilfe wäre sehr dankbar.


Ps. Einen Alias ​​erstellen wie:

alias ssh='ssh -X'

in meinem .bashrc zwingt PyCharm nicht, die X11-Weiterleitung zu aktivieren.

14
Gengiolo

Also konnte ich jsch auf den neuesten Stand bringen und das testen, und es hat super funktioniert. 

X11-Weiterleitung verwenden

Um die X11-Weiterleitung in PyCharm zu verwenden, müssen Sie Folgendes tun:
- Installieren Sie einen X-Server, wenn Sie noch keinen haben. Unter Windows kann dies das VcXsrv-Projekt sein, unter Mac OS X das XQuartz-Projekt.
- Download oder kompilieren Sie das jsch-Paket. Anweisungen zum Kompilieren finden Sie unten.
- Sichern Sie jsch-0.1.54.jar im lib-Ordner Ihres Pycharms und ersetzen Sie ihn durch die gepatchte Version. Starten Sie Pycharm mit einer Remote-Umgebung und entfernen Sie alle Instanzen der Umgebungsvariable DISPLAY, die Sie möglicherweise in der run/debug-Konfiguration festgelegt haben.

Zusammenstellung

Auf einem Mac OS- oder Linux-System, auf dem Maven installiert ist, müssen Sie Folgendes tun: 

wget http://sourceforge.net/projects/jsch/files/jsch/0.1.54/jsch-0.1.54.Zip/download
unzip download
cd jsch-0.1.54
sed -e 's|x11_forwarding=false|x11_forwarding=true|g' -e 's|xforwading=false|xforwading=true|g' -i src/main/Java/com/jcraft/jsch/*.Java
sed -e 's|<version>0.1.53</version>|<version>0.1.54</version>|g' -i pom.xml
mvn clean package

Dadurch wird jsch-0.1.54.jar im target-Ordner erstellt. 

 X11 Enabled

4
Tarun Lalwani

Öffnen Sie parallel MobaXTerm und stellen Sie eine Verbindung her, während die X11-Weiterleitung aktiviert ist. Jetzt leitet PyCharm die Anzeige über den MobaXTerm X11-Server weiter. Dies, bis PyCharm diese 'einfache' Funktion hinzufügt.

Legen Sie außerdem die Umgebungsvariable DISPLAY in der PyCharm-Laufkonfiguration wie folgt fest: DISPLAY = localhost: 10.0 (Die rechte Seite sollte mit dem Befehl echo $ DISPLAY auf der Serverseite abgerufen werden.)

0
Hesham Eraqi