Ich habe schon längere Zeit die x-forwarding Funktion von SSH und den Apple Xserver vewendet um mir X Applikationen von diversen Linux Rechnern im LAN und über das Internet lokal anzeigen zu lassen. Was mich aber immer schon geärgert hat, ist dass ich nicht den kompletten Desktop, inkl. Windowmanager usw., einer entferntetn Maschine in einem Fenster am OSX Desktop darstellen lassen konnte.

Auftritt Xnest 🙂

Xnest ist ein X-Server und ein X-Client zugleich. Es benötigt einen laufenden X-Server und stellt seinerseits wiederum einen X-Server für alle in Xnest ausgeführten Anwendungen bereit.

Ich habe nun zwei mögliche Wege herausgefunden um das gewünschte zu erreichen:

Linux Box im LAN

Dies setzt voraus dass XDMCP für Entfernte Anmeldungen aktiviert ist und der lokale X-Server läuft.
Xnest :1 -geometry 1024x768 -query 192.168.0.3

Erklärung:

  • Xnest :1 startet einen neuen X-Server in einem Fenster und weißt Display 1 zu (da auf Display 0 bereits der lokale X-Server läuft)
  • -geometry 1024×768 legt fest wie groß das Fenster sein soll
  • -query 192.168.0.3 unter dieser IP ist mein Linux Computer im LAN zu erreichen

Der Anmeldebildschirm über XDMCP Der GNOME Desktop in Xnest

Linux Box per SSH

ssh -XC yourdomain.com
Xnest :1 -geometry 1024x768 &
xterm -display :1

Erklärung:

  • ssh -XC yourdomain.com startet eine SSH verbindung mit aktiviertem x-forwarding und Kompression (ist schneller) zu der gewünschten Linux Kiste
  • Xnest :1 -geometry 1024×768 & macht das gleiche wie im ersten Beispiel, nur wird diesmal das Xnest Fenster über die SSH Verbindung am lokalen X-Server dargestellt und danach die Konsole wieder freigegeben (durch das Zeichen “&”)
  • xterm -display :1 startet ein Terminal und stellt es auf Display :1 dar, dieses Display ist das Xnest Fenster, welches wiederum am lokalen X-Server dargestellt wird

Als letztes muss man nur noch in dem xterm im Xnest Fenster ein DE oder einen WM starten. In meinem Fall habe ich “gnome-session” eingegeben um den GNOME 2.0 Desktop zu starten.