X2Go
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 20.04 Focal Fossa
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Ausbaufähige Anleitung
Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.
Anmerkung: Das Desktopsharing von anderenen Rechnern sowie das Drucken kann noch beschrieben werden.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
X2Go 🇬🇧 ist eine Software, mit der man einen entfernten Linux-Desktop über eine Netzwerkverbindung nutzen kann, als würde man direkt davor sitzen. Das Verbindungsprotokoll ist für geringe Bandbreiten optimiert, die Verbindung selbst wird automatisch mit SSH verschlüsselt. So ist es ohne weiteres möglich, Verbindungen auch über das Internet aufzubauen. Während der Server nur für Linux zur Verfügung steht, wird die passende Client-Software auch für Windows und Mac OS X angeboten. Im Gegensatz zu VNC erhält jeder Benutzer einen eigenen Linux-Desktop, was den Aufbau eines Terminalservers ermöglicht.
Die Begriffe Server und Client sind in diesem Artikel wie folgt definiert:
Server: der Linux-Rechner, auf den zugegriffen werden soll
Client: der Rechner, mit dem der Server benutzt werden soll
Im Hintergrund werden Technologien verwendet, die für NX (und die freien Varianten FreeNX und Neatx) entwickelt wurden. Inzwischen kann X2Go NX vollständig ersetzen und hat einen Funktionsumfang erreicht, der weit über die hier zu findende Beschreibung hinausgeht. Wer mehr wissen möchte, zieht die englischsprachige Originaldokumentation zu Rate.
Hinweis:
Die Serverkomponente von X2Go funktioniert nur mit Desktop-Umgebungen, die keine 3D-Unterstützung zwingend voraussetzen. Dies schließt derzeit die Verwendung von Unity, der GNOME Shell, Cinnamon und KDE 5 (ab Kubuntu 15.04) auf dem Server aus (Stand: Januar 2016).
Perfekt geeignet sind dagegen Xubuntu, Lubuntu, Ubuntu MATE und KDE (Plasma Workspaces) 4. Mehr Informationen sind im X2Go-Wiki unter Desktop Environment Compatibility 🇬🇧 zu finden.
Installation¶
Die Installation richtet sich nach den jeweiligen Erfordernissen. Beabsichtigt man beispielsweise, dass zwei Linux-Rechner "über Kreuz" aufeinander zugreifen können sollen, ist auf beiden Rechnern sowohl die Server- als auch die Client-Komponente erforderlich. Wenn man dagegen von wechselnden Rechnern (mit unterschiedlichen Betriebssystemen) auf einen bestimmten Linux-Rechner zugreifen möchte, reicht es aus, auf letzterem nur die Server-Komponente zu installieren. Auf allen anderen Rechnern wird dann ausschließlich der Client installiert.
Server¶
Die Server-Komponente ist nicht in den offiziellen Paketquellen enthalten. Zur Installation nutzt man das "Personal Packages Archiv" (PPA) [1] der Entwickler.
Adresszeile zum Hinzufügen des PPAs:
ppa:x2go/stable
Hinweis!
Zusätzliche Fremdquellen können das System gefährden.
Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der PPA-Beschreibung des Eigentümers/Teams x2go zu entnehmen.
Nach den Aktualisieren der Paketquellen müssen folgende Pakete installiert werden [2]:
x2goserver (ppa)
x2goserver-xsession (ppa)
Befehl zum Installieren der Pakete:
sudo apt-get install x2goserver x2goserver-xsession
Oder mit apturl installieren, Link: apt://x2goserver,x2goserver-xsession
Je nach Desktop-Umgebung des Servers müssen noch weitere Pakete installiert werden (Xfce benötigt kein Extrapaket).
Auf dem Server vorhandene Desktop-Umgebung und benötigtes Paket | ||
LXDE | MATE | |
Befehl zum Installieren der Pakete: sudo apt-get install x2golxdebindings Oder mit apturl installieren, Link: apt://x2golxdebindings |
Befehl zum Installieren der Pakete: sudo apt-get install x2gomatebindings Oder mit apturl installieren, Link: apt://x2gomatebindings |
Client¶
Im Gegensatz zur Serverkomponente ist der Client in den offiziellen Paketquellen enthalten. Folgendes Paket muss installiert werden [1]:
x2goclient (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install x2goclient
Oder mit apturl installieren, Link: apt://x2goclient
PPA¶
Aktuelle Client-Versionen können aus dem gleichen PPA wie die Server-Komponente bezogen werden (siehe oben). Nach dem Aktualisieren der Paketquellen erfolgt die Installation des Clients wie bei der Installation aus den offiziellen Paketquellen beschrieben.
Verwendung¶
X2Go-Client |
Während der Server nach der Installation bereits automatisch aktiv ist (für die zukünftigen Benutzer muss ein Benutzerkonto auf dem Server existieren bzw. eingerichtet werden), startet der Client nur auf explizite Anforderung. Bei Ubuntu-Varianten mit einem Anwendungsmenü findet man einen entsprechenden Eintrag unter "Internet → X2Go Client" [3]. Alternativ verwendet man den Befehl x2goclient
.
Bei der ersten Benutzung muss noch eine Verbindung ("Sitzung") eingerichtet werden. Während Rechner- (oder IP-Adresse) und Benutzername sowie die Sitzungsart (Desktop-Umgebung oder Fenstermanager auf dem Server) zwingend erforderlich sind, sind weitere Angaben zur Verbindung optional. Empfehlenswert ist dennoch, z.B. die Bildschirmauflösung, die Audioausgabe und ähnliches zu kontrollieren und bei Bedarf den eigenen Wünschen anzupassen.
Sitzungsmanagement: (von links nach rechts) 1. Entf. Anwendungen 2. Freigaben 3. Pause 4. Beenden |
Sitzungen anhalten und wieder aufnehmen¶
Eine Sitzung kann durch einfaches Beenden des X2Go-Clients und späteres Neuverbinden auf dem Server weiterlaufen. Dies ist sehr praktisch, wenn die Netzwerkverbindung unerwartet abbricht. Im Normalfall sollte man die Sitzung jedoch über die entsprechende Schaltfläche unterhalb der aktiven Sitzung im X2Go-Client anhalten, wenn man diese später fortsetzen möchte.
Freigaben¶
Um lokal vorhandenen Daten auch mit den auf dem Server ausgeführten Programmen nutzen zu können, bearbeitet man im X2Go-Client eine vorhandene Sitzung über die Sitzungsverwaltung ( Strg + E ) und fügt über die Registerkarte "freigegebene Ordner" einen oder mehrere lokale Ordner hinzu. Bei Bedarf kann die Option "automatisch verbinden" aktiviert werden.
Innerhalb einer Sitzung findet man diese Freigaben auf dem Server unterhalb von ~/media/ im Homeverzeichnis wieder. Während die Unterordner ~/media/cd/ und ~/media/rm/ für ein optisches Laufwerk respektive externe Datenträger (removable media?) stehen, dient der Unterordner ~/media/disk/ als Sammelstelle für die erteilten Freigaben. So entspricht beispielsweise der Ordner /home/BENUTZERNAME/media/disk/_home_BENUTZERNAME/ auf dem Server dem Ordner /home/BENUTZERNAME/ auf dem Client.
Um während einer laufenden Sitzung weitere Freigaben einzurichten, wechselt man zum X2Go-Client. Unterhalb der aktiven Sitzung wählt man das Ordnersymbol, dass direkt zu "Sitzungsverwaltung → freigegebene Ordner" führt. Auf diesem Weg können auch externe, via USB angeschlossene Datenträger nachträglich eingebunden werden. Unter Ubuntu sind diese (auf dem Client) in der Regel unter /media/BENUTZERNAME/ zu finden.
Obwohl X2Go entwickelt wurde, um einen kompletten Desktop darzustellen, können auf Wunsch auch einzelne Anwendungen gestartet werden. Deren Programmfenster integrieren sich dann nahtlos (seamless) in die eigene Desktop-Umgebung. Im Client stehen bei der Sitzungsart dazu zwei Mechanismen zur Verfügung: Entfernte Anwendungen können leicht mit lokalen verwechselt werden. Daher enthält die Titelzeile eines Programmfensters zur einfacheren Identifikation hinter dem Anwendungsnamen den Zusatz "(on SERVERNAME)". }}}
Verbindung zum eigenen Desktop auf dem Server¶
X2Go kann auch die Verbindung zu einem bereits geöffneten Desktop herstellen. Die Vorgehensweise ist wie beim Desktop Sharing, nur dass bei identischem Benutzer die SSH-Authentifizierung ohne zusätzliche Genehmigung durchgereicht wird. Die Sitzung muss bereits aktiv und damit am Bildschirm des Servers zu sehen sein. Im Unterschied zu nativen X2Go-Sessions kann die Auflösung aber nicht automatisch angepasst werden. Idealerweise sind also die Auflösungen von Server und Client aufeinander abgestimmt. Die Fenstergröße muss per Hand angepasst werden.
Tastenkürzel¶
Einige praktische Tastenkürzel für den x2goclient
-Client:
Siehe auch Customize NX Keyboard Shortcuts 🇬🇧.
Konfiguration¶
Während die Konfiguration der Client-Programme i.d.R. grafisch erfolgen kann, fehlt diese Möglichkeit beim Server. Einstellungen werden stattdessen mit einem Editor und Root-Rechten über Dateien im Ordner /etc/x2go/ vorgenommen.
Problembehebung¶
Eigene Sitzung definieren¶
Manchmal kann es erforderlich sein, die Sitzungsart oder genauer den Befehl zum Aufruf einer Desktop-Umgebung selbst zu definieren. Bei der Auswahl der Sitzungsart wählt man "Andere Desktopumgebung" und verwendet einen angepassten Befehl. Hier ein Beispiel für Lubuntu (1241958):
lxsession -e LXDE -s Lubuntu
Das Gleiche gilt auch, wenn man statt einer Desktop-Umgebung nur einen reinen Fenstermanager auf dem Server einsetzt. Über diesen Mechanismus angepasst werden müssen beispielsweise Openbox und IceWM (Details 🇬🇧).
Fehlende Audioausgabe bei Lubuntu¶
Um die Audioausgabe auf dem Client zu realisieren, wird von X2Go PulseAudio verwendet. Dieses in Lubuntu nicht enthalten und muss dort erst in Form des Pakets pavucontrol nachgerüstet werden (fehlende Abhängigkeiten werden automatisch installiert).
Inkompatibilität mit NX¶
Obwohl X2Go auf einer Weiterentwicklung der NX-Bibliotheken beruht, ist es inkompatibel zu NX. Praktisch heißt das, der X2Go-Client unterstützt neben dem hauseigenen Protokoll zwar auch RDP und XDMCP, aber keinen NX-Server. Das gilt auch umgekehrt: ein NX-Client kann sich nicht mit einem X2Go-Server verbinden.
Links¶
Projektseite 🇬🇧 mit ausführlicher Dokumentation
FAQ 🇬🇧 - häufige Fragen und Antworten
Vorschau auf das neue X2go 4 🇩🇪 - Linuxmagazin, 02/2013
Xubuntu - SSH/x2go 🇩🇪 - Problemlösung für Desktop Sharing unter Xubuntu
Guacamole 🇬🇧 - Remote-Desktop-Lösung, die auf dem Client nur einen HTML5-fähigen Webbrowser benötigt