So stellen Sie von einem Mac aus eine Verbindung zu Remote-X11-Hosts her

In meinen beiden vorherigen Beiträgen zu diesem Thema habe ich erklärt, warum Sie X11 verwenden möchten, um einen Host remote zu betreiben, und die Grundlagen für die Konfiguration Ihres Mac für die Ausführung des X11-Servers von OS X und die Verwendung lokaler X11-Software. Jetzt kommen wir zum wichtigsten Schritt, der, sobald Sie die gesamte X11-Client / Server-Sache verstanden haben, ein Spaziergang im Park ist.

Im X11-Sprachgebrauch ist der X11-Server die Software, die die Kommunikation übernimmt und Client-Inhalte rendert. Die X11.app, die Sie auf Ihrem Mac ausführen, ist der Server. X11-Anwendungen auf Remote-Hosts sind Clients. Sie wenden sich an Ihren Server, um auf Ihr Display, Ihre Tastatur und Ihre Maus zu tippen. Der Netzwerk- und Rechenaufwand ist jedoch weitaus geringer als bei Remotedesktopsitzungen im Vollbildmodus.

Das Schwierigste an X11 war, dass X11-Clients Ihren Server sehen. Das Erreichen über LAN-Segmente oder über NATs und Firewalls war kein Picknick, ohne auf VPN zurückzugreifen. Glücklicherweise hat uns eine kreative Verschmelzung von X11 und SSH, der sicheren Shell, dieses Juwel gegeben:

ssh -X Hostname

Wenn dieser Befehl von xterm auf Ihrem Mac ausgeführt wird, wird ein Tunnel vom Remotecomputer zu Ihrem X-Server erstellt. Sie müssen natürlich über ssh auf diesen Computer zugreifen können. Dazu müssen Sie sshd (den SSH-Daemon) auf der Remote-Box einrichten und Anmeldeinformationen austauschen.

Wenn ssh -X eine Verbindung herstellt, werden Sie wie bei normalem ssh nach einem Kennwort gefragt. Wenn Sie eine Shell-Eingabeaufforderung erhalten, gehen Sie folgendermaßen vor:

echo $ DISPLAY

Die Antwort sollte "localhost: 10.0" zurückkommen, es sei denn, der Remote-Computer wurde anders konfiguriert. Wenn DISPLAY leer ist, können Sie Folgendes einstellen:

export DISPLAY = "localhost: 10.0"

Wenn Sie jetzt in dieser SSH-Sitzung eine X11-fähige App ausführen, wird die Anwendung auf dem Remotecomputer ausgeführt und öffnet automatisch die Fenster auf Ihrem Mac. Möglicherweise müssen Sie den Pfad zum X11-Client-Bestand Ihres Remote-Systems angeben. Zum Beispiel,

export PATH = / usr / openwin / bin: $ PATH

ist auf Solaris-Computern erforderlich.

Sobald sich die X11-Apps in Ihrem Pfad befinden, können Sie herumschnüffeln. Alles, was gegen GNOME und KDE kompiliert wurde, ist an sich X Window-fähig. Wenn auf Ihrem Remotecomputer die GNOME-Desktopumgebung installiert ist (sie muss nicht ausgeführt werden), versuchen Sie dies in Ihrer SSH-Sitzung:

Nautilus &

Das ist der Dateimanager von GNOME.

gnome-system-monitor &

ist auch nützlich und Firefox läuft gut auf X11.

Wenn Sie einige Minuten offline sind, wird Ihr SSH-Tunnel für Sie geöffnet und erneut verbunden, sobald Ihre LAN-Schnittstelle wieder hergestellt wird. Wenn Sie jedoch zu lange offline sind, läuft Ihre Sitzung ab und Sie kehren zur Shell-Eingabeaufforderung Ihres Mac zurück. Einfach wieder ssh -X.

X11 ist für den Remotezugriff auf GUI-Apps viel schneller und effizienter als VNC. Sobald Sie es zum ersten Mal herunterfahren, ist es selbstverständlich, auch zwei Macs miteinander zu verbinden.