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 screenfür X11?
screenfü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 screenfür X11?
screenfü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 :1usw.).
Tatsächlich können Sie X in weiterleiten screen. Das Einzige, was Sie tun müssen, ist, $DISPLAYdas screenFenster so einzurichten, dass es außen gleich ist.
nach dem ssh -Xin der entfernten Maschine, Typ
$ echo $DISPLAY
und kopieren Sie das Ergebnis in der Regel localhost:N.0. Geben Sie dann screenim lokalen screenFenster Folgendes ein:
$ export DISPLAY=localhost:N.0
Führen Sie danach ein beliebiges Xerforderliches Programm innerhalb des Bildschirmfensters aus.
HINWEIS: Für jedes screenFenster 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 -DRdie Sitzung erneut her.