Ich verwende die X11-Weiterleitung ssh
, um Linux-Apps auf meiner Windows-Box auszuführen, und wenn das Netzwerk ausfällt, geht alles verloren, was ausgeführt wurde. Gibt es etwas Ähnliches screen
für X11?
screen
für GUI-Apps funktioniert.
Ich verwende die X11-Weiterleitung ssh
, um Linux-Apps auf meiner Windows-Box auszuführen, und wenn das Netzwerk ausfällt, geht alles verloren, was ausgeführt wurde. Gibt es etwas Ähnliches screen
für X11?
screen
für GUI-Apps funktioniert.
Antworten:
Xpra oder die Xpra-Gabel behaupten genau das zu sein:
Im Grunde genommen ist es also ein Bildschirm für Remote-X-Apps.
Ich habe es eine Weile nicht mehr benutzt, aber es hat ziemlich gut funktioniert, als ich es ausprobiert habe. Sie starten den Server auf dem Remotecomputer:
[remote] $ xpra start :13
Anschließend stellen Sie von Ihrem lokalen Computer aus eine Verbindung zum Server her:
[local] $ xpra attach ssh:remote:13
Und jetzt wird alles, was auf der X-Anzeige 13 des Remote-Computers angezeigt wird, lokal angezeigt:
[remote] $ DISPLAY=:13 xeyes
Sie suchen nach VNC . Das Prinzip ähnelt in etwa dem von screen: Sie führen einen VNC-Server (den Hintergrundprozess SCREEN
) und einen VNC-Client (den Vordergrundprozess screen
) aus. Der VNC-Server ist ein X-Server, auf dem Sie X-Anwendungen ausführen können.
Führen Sie einen VNC-Server auf der Linux-Box und einen Client auf der Windows-Box aus. Sie haben mehrere Implementierungen zur Auswahl; Eine Möglichkeit ist TightVNC . TightVNC ist in vielen Linux-Distributionen enthalten (wenn es nicht in Ihrer ist, installieren Sie es oder wählen Sie eine andere Implementierung aus), und es gibt einen Windows-Client.
Wenn Ihre beiden Computer nicht sehr eng mit dem Netzwerk verbunden sind - wenn eine Firewall vorhanden ist oder die Gefahr besteht, dass sie abgehört werden - müssen Sie den VNC-Verkehr durch ssh tunneln. Bitten Sie ssh, den lokalen Port 5900 an den Remote-Port 5900 weiterzuleiten (5900 entspricht der Anzeige :0
, verwenden Sie 5901 für :1
usw.).
Tatsächlich können Sie X in weiterleiten screen
. Das Einzige, was Sie tun müssen, ist, $DISPLAY
das screen
Fenster so einzurichten, dass es außen gleich ist.
nach dem ssh -X
in der entfernten Maschine, Typ
$ echo $DISPLAY
und kopieren Sie das Ergebnis in der Regel localhost:N.0
. Geben Sie dann screen
im lokalen screen
Fenster Folgendes ein:
$ export DISPLAY=localhost:N.0
Führen Sie danach ein beliebiges X
erforderliches Programm innerhalb des Bildschirmfensters aus.
HINWEIS: Für jedes screen
Fenster sind die Umgebungsvariablen unabhängig. Daher müssen Sie es möglicherweise für jedes Fenster separat einrichten.
screen
? OderXVNC
? Sie führen den Bildschirm auf dem Linux-Computer aus, und wenn Ihr Netzwerk unterbrochen wird, stellen Sie die Verbindung wieder her und stellen Siescreen -DR
die Sitzung erneut her.