Warum würden Sie VNC (oder was das betrifft NX) statt nur mit ssh -X (-Y)
. Ich habe gelesen, dass VNC weniger Bandbreite benötigt, aber gibt es weitere Unterschiede / Vorteile mit dem jeweiligen Tool?
Warum würden Sie VNC (oder was das betrifft NX) statt nur mit ssh -X (-Y)
. Ich habe gelesen, dass VNC weniger Bandbreite benötigt, aber gibt es weitere Unterschiede / Vorteile mit dem jeweiligen Tool?
Antworten:
Abgesehen von Bandbreiten- und Latenzproblemen (die sich geringfügig unterscheiden können) liegen die großen Unterschiede in den bereitgestellten Funktionen.
VNC exportiert eine ganze Sitzung, den Desktop und alles, während ssh ein einzelnes Programm ausführt und dessen Fenster auf Ihrer Workstation anzeigt.
Der VNC-Server exportiert eine Sitzung, die auch nach dem Trennen des Bildschirms überlebt, und Sie können später bei geöffneten Fenstern usw. erneut eine Verbindung herstellen. Dies ist bei einem ssh X-Tunnel nicht möglich, da die Fenster nach dem Tod Ihres X-Servers ausgeblendet werden .
ssh user@host
; und nach der Anmeldung: screen bash
; trennen, ctrl+a
gefolgt von ctrl+d
. Sie können sich abmelden und erneut anmelden, dann: screen -ls
und screen -r
. Durch Beenden von bash wird die Bildschirmsitzung beendet. Weitere (viel mehr) finden Sie in verschiedenen Tutorials auf dem GNU-Bildschirm
ssh -X
leitet X11-Befehle an Ihren lokalen X-Server weiter. Es ist also so, als würden Sie das Programm lokal ausführen, wenn es tatsächlich auf dem Computer am anderen Ende ausgeführt wird. Es ist sehr langsam, weil es viel Bandbreite verbraucht. (Dies ist, worüber die Leute reden, wenn sie sagen, X11 sei "netzwerktransparent".)
Mit VNC und anderen Remotedesktop-Apps kann der andere Computer die gesamte Grafikzeichnung usw. verarbeiten und im Wesentlichen einen Screenshot erfassen und an Ihren Computer zurücksenden. Es kann viel schneller erscheinen, da weit weniger Informationen erforderlich sind, um alles anzuzeigen. Es wird jedoch nicht nur eine einzelne Anwendung, sondern der gesamte Desktop gesendet.
Ich empfehle die Verwendung ssh -X
über das Internet aus einem einfachen Grund nicht: Es wird die gesamte verfügbare Bandbreite verwendet. Meiner Meinung nach ist dies über ein LAN ziemlich nützlich. Wenn Sie also nur eine Anwendung benötigen und nicht einen ganzen Desktop ausführen müssen, ist dies ein guter Weg. Andernfalls verwenden Sie einfach VNC.
VNC gibt einen gesamten Desktop von einem Remote-System frei. Es erfordert einen vollwertigen Desktop auf dem Remote-System.
Mit ssh -X können Sie eine einzelne X-Anwendung von einem Remote-Server ausführen. Auf dem Remote-System muss kein vollständiger Desktop ausgeführt werden, und häufig müssen nur eine Handvoll Pakete auf dem Remote-System installiert werden.
ssh -X
kann nützlich sein, wenn komplexe Softwarepakete über eine Remoteverbindung installiert werden. Einige Softwareprodukte verwenden möglicherweise ein GUI-Installationsprogramm (Oracle-Datenbank usw.). Ich möchte keinen vollwertigen Gnome-Desktop auf meinem Remote-Server installieren. Sie installieren also ein oder zwei X11-Pakete (Xauth?) Auf dem Remote-Server und erlauben dem DBA, das Oracle-Installationsprogramm remote mit etwas Einfachem wie 'ssh -X / media / cdrom / oracle-installer' auszuführen.