Konfiguration von X-11

 

 

In diesem Dokument finden sich Informationen zu:

 

X-11

Beschreibung Ein X-11 Softwaresystem ist ein Vertreter des X-Window oder X-Konzeptes. Ziel von X ist die netztransparente und Rechnersystem- unabhängige Bedienungsumgebung für Arbeitsplatzrechner-Software. Die Bedienungsumgebung unterstützt mehrere überlappende Fenster auf einer Vielzahl von Arbeitsplatzrechnern.
Netzwerktranparenz bedeutet, daß X-Anwendungen, die auf einer CPU laufen, ihre Ausgabe auf einem Bildschirm zeigen können, der entweder mit derselben, oder einer anderen CPU verbunden ist.
Rechnersystemunabhängigkeit bedeutet, daß die Ausprägung der Bedienelemente auf allen Rechnern gleich ist und daß die Ausgabe auf jedem X-System erfolgen kann. Dies wird erreicht durch eine standardisierte Softwareschnittstelle und impliziert, daß auf dem System, das die Ausgabe darstellen soll, ein X-Server (Software) läuft. Auf diese Weise kannt die X-11 Anwendung (X-Client) mit dem X-Server kommunzieren.
Environmentvariable DISPLAY Auf Unix-Systemen wird der X-11 Anwendung durch die Environmentvariable DISPLAY mitgeteilt, auf welchem Rechner die Ausgabe erfolgen soll. Beispiel: Der Befehl echo $DISPLAY könnte liefern: ubmgpk.Uni-Molgen.gwdg.de:0.0 (Hinter dem Rechnernamen ist die Nummer des X-Servers und die Nummer des Bildschirms angegeben; meist 0.0). Manche X-Server lassen eine Ausgabe auf den Bildschirm nur für explizit mit Adresse einzutragende X-Klienten zu.

X-11 Klienten Konfigurieren

     
Voraussetzung Sie sind z.B. via Telnet auf einem Rechner im Unix-Cluster der GWDG eingeloggt.

Sie benutzen die im Unix-Cluster als DEFAULT konfigurierte KORN-Shell.

   
Einmaliges Setzen der Environmentvariable DISPLAY 1.) Bestimmen Sie den Namen oder die IP-Adresse des Rechners, vor dem Sie gerade sitzen. Der Name wird im folgenden mit RECHNERNAME referenziert. Er kann z.B. ubmgpc.uni-molgen.gwdg.de oder 134.76.70.65 lauten.

2) Geben Sie im Fenster, das während der Telnetsitzung geöffnet ist, folgenden Befehl ein: export DISPLAY=RECHNERNAME:0.0

Konkretes Beispiel  
Setzen und Anzeigen der Environmentvariablen
export DISPLAY=134.76.70.62:0.0<Return> ...die Displayvariable wird gesetzt und via export für alle weiteren Shells bekannt gemacht
gwdu20> echo $DISPLAY ...Anzeige der Variablen mit echo,
mit vorangestelltem $ wird der Inhalt einer Variablen dereferenziert
MG-NTS3.UBMG.gwdg.de:0.0  
  Die Environmentvariable DISPLAY ist nun gesetzt und ist, da exportiert, auch in allen weiteren Shells, die während der Sitzung geöffnet werden, bekannt; nach dem Logout existiert sie jedoch nicht mehr.
     
Initialisierung während des Logins Bei jedem Starten einer KORN-Shell wird das benutzerspezifische File .kshrc ausgeführt. Es liegt nahe, dieses Skript um eine Kommando zu ergänzen, welches die DISPLAY-Variable dynamisch setzt.

Im Unix-Cluster der GWDG leistet das Script /usr/users/rmerkl/scripts/setdisplay das Gewünschte.

Eintrag in .kshrc Zunächst auf einem Rechner des Unix-Clusters einloggen. Displayvariable setzten, so wie oben angegeben.

Mit xedit .kshrc & einen einfachen, X11-fähigen Editor starten.

Die Zeile . /usr/users/rmerkl/scripts/setdisplay in .kshrc eintragen. Wichtig: Zwischen "." und dem ersten "/" muß ein Leerzeichen eingefügt sein.

Die Datei abspeichern, den Editor verlassen.

Mit chmod u+x .kshrc dem User das Ausführen (eXecute) der Datei erlauben.

Ausloggen und wieder Einloggen. Wurde alles korrekt ausgeführt, ist ab sofort die Display-Variable dynamisch gesetzt. Dies kann mittels echo $DISPLAY überprüft werden.

Einschränkung Das Script setdisplay kann nur erkennen, von welchem Rechner aus die Sitzung im Unixcluster unmittelbar gestartet wurde. Erfolgt das Einloggen ins Unix-Cluster über eine Kette von geschachtelten Telnetverbindungen, so wird der Rechner, auf dem die Ausgabe erfolgen soll, nicht erkannt.

Im Falle

PC1->ServerA->ServerB->Unix-Cluster.

würde die Adresse von ServerB in die DISPLAY-Variable übernommen und nicht die (vermutlich gewünschte) von PC1.

Probleme Aus mehreren Gründen kann die Ausgabe von X11 Applikationen auf den lokalen Rechner fehlschlagen.

 

Wünsche/Anregungen an den Webmaster,