Der Anmeldemanager ist ein Server, der einen Anmeldebildschirm anzeigt, die Zugriffsberechtigungen der Benutzer prüft und Benutzersitzungen startet. Die grafische Anmeldung ist auf grafikfähigen Bildschirmen eine attraktive Alternative zur Anmeldung im herkömmlichen Zeichenmodus. Die vom Anmeldeserver verwalteteten Anzeigen können direkt dem Anmeldeserver zugeordnet oder mit einem X-Terminal bzw. einer Workstation im Netzwerk verbunden werden.
Der Anmeldeserver kann nur vom Benutzer 'root' gestartet, angehalten oder konfiguriert werden.
Der Anmeldeserver führt folgende Aktion aus:
Anzeigen einer Anmeldeanzeige uneingeschränkt oder auf Anforderung auf lokalen und Netzwerk-Grafikanzeigen.
Anpassen direkt angeschlossener Zeichenkonsolenanzeigen.
Anzeigen eines Auswahlbildschirms, mit dem der Benutzer Anmeldeanzeigen anderer Server im Netzwerk anzeigen kann.
Kontrollierter Zugriff auf den Anmeldeserver.
Ermöglichen des Zugriffs auf die Anmeldung im herkömmlichen Zeichenmodus.
Vom Anmeldemanager verwaltete Anzeigen können direkt mit dem Anmeldeserver oder mit einem X-Terminal bzw. einer Workstation im Netzwerk verbunden sein. Für lokale Anzeigen startet der Anmeldeserver automatisch einen X-Server und zeigt eine Anmeldeanzeige an. Für Netzwerkanzeigen (z. B. X-Terminals) unterstützt der Anmeldeserver das XDMCP-Protokoll (X Display Manager Protocol) 1.0, mit dem Anzeigen eine Anmeldeanzeige vom Anmeldeserver angefordert werden können.
Der Anmeldeserver wird normalerweise beim Starten des Systems ausgeführt. Er kann aber auch in der Befehlszeile gestartet werden.
Mit dem folgenden Befehl kann der Anmeldeserver so konfiguriert werden, daß er beim Systemstart ausgeführt wird: /usr/dt/bin/dtconfig -e.
Der Server wird dann bei jedem Neustart des Systems automatisch aufgerufen.
Weitere Informationen zum Desktop-Konfigurationsprogramm dtconfig finden Sie in Anhang A. Er enthält eine Kopie der Hilfeseite dtconfig.1.
Mit dem folgenden Befehl starten Sie den Anmeldeserver in der Befehlszeile: /usr/dt/bin/dtlogin -daemon; exit.
Der Anmeldeserver kann zwar in der Befehlszeile aufgerufen werden, um eine bestimmte Konfiguration zu testen, er sollte aber normalerweise beim Systemstart ausgeführt werden.
Abbildung 1-1 zeigt eine mögliche Konfiguration des Anmeldeservers.
Standardmäßig wird die Prozeß-ID des Anmeldeservers in der Datei /var/dt/Xpid gespeichert.
Soll eine andere Datei verwendet werden, passen Sie die Ressource Dtlogin.pidFile in der Datei Xconfig entsprechend an. Wird eine Änderung vorgenommen, muß das angegebene Verzeichnis beim Starten des Anmeldeservers bereits existieren.
Um die Datei Xconfig zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Nehmen Sie die Änderungen in der Datei /etc/dt/config/Xconfig vor, und weisen Sie den Anmeldeserver durch folgenden Befehl an, Xconfig erneut zu lesen:
/usr/dt/bin/dtconfig -reset
Dadurch wird der Befehl kill -HUP Anmeldeserver_Prozeß_ID aufgerufen.
Soll die Prozeß-ID des Anmeldeservers beispielsweise in der Datei /var/myservers/Dtpid gespeichert werden, nehmen Sie folgende Zeile in die Datei Xconfig auf:
Dtlogin.pidFile: /var/myservers/Dtpid
Nach dem Neustarten des Anmeldeservers wird seine Prozeß-ID in der Datei /var/myservers/Dtpid gespeichert. Das Verzeichnis /var/myservers muß bereits vorhanden sein.
Beim Starten ermittelt der Anmeldeserver in der Datei Xservers , ob ein X-Server gestartet werden muß sowie ob und wie Anmeldeanzeigen auf lokalen und Netzwerkbildschirmen angezeigt werden sollen.
Um die Datei Xservers zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Nehmen Sie die Änderungen in /etc/dt/config/Xservers vor, und weisen Sie den Server durch folgenden Befehl an, Xservers erneut zu lesen:
/usr/dt/bin/dtconfig -reset
Dadurch wird der Befehl kill -HUP Anmeldeserver_Prozeß_ID ausgeführt.
Die Zeilen in der Datei Xservers müssen im folgenden Format angegeben werden:
Anzeigename Anzeigeklasse Anzeigetyp X_Server_Befehl
Die Argumente haben folgende Bedeutung:
Anzeigename - Der für die Verbindung mit dem X-Server zu verwendende Verbindungsname (:0 im folgenden Beispiel). Der Wert * (Sternchen) wird zu Hostname:0 erweitert. Der angegebene Wert muß mit der Verbindungsnummer im Argument X_Server_Befehl übereinstimmen.
Anzeigeklasse - Spezifische Ressourcen für die Anzeige (im folgenden Beispiel Local).
Anzeigetyp - Dieses Argument gibt an, ob eine lokale oder eine Netzwerkanzeige vorliegt und wie die Option 'Befehlszeilenanmeldung' in der Anmeldeanzeige verwaltet wird (local@console im folgenden Beispiel).
X_Server_Befehl - Die Befehlszeile, Verbindungsnummer und andere Optionen, die der Anmeldeserver zum Starten des X-Servers verwendet (im folgenden Beispiel /usr/bin/X11/X: 0). Die Verbindungsnummer muß mit dem in Anzeigename angegebenen Wert übereinstimmen.
Die Standardzeile in Xservers sieht ungefähr folgendermaßen aus:
:0 Local local@console /usr/bin/X11/X :0
Besitzt das Anmeldeserversystem keine Grafikanzeige, können Sie den Anmeldeserver auch ohne lokale Anzeige starten, indem Sie die Zeile für die lokale Anzeige in der Datei Xservers mit einem #-Zeichen auskommentieren. Ein Beispiel:
# :0 Local local@console /usr/bin/X11/X :0
Der Server läuft dann nach dem Start als Hintergrundprozeß und wartet auf Anforderungen von Netzwerkanzeigen.
Wählt der Benutzer in der Anmeldeanzeige die Option 'Befehlszeilenanmeldung', beendet der Anmeldeserver vorübergehend den X-Server und ermöglicht auf einem grafikfähigen Terminal den Zugriff auf die herkömmliche Anmeldung in der Befehlszeile. Nachdem sich der Benutzer an- und wieder abgemeldet hat bzw. nach einer definierten Zeitüberschreitung startet der Anmeldeserver den X-Server neu.
Auf Netzwerkanzeigen ist die Option 'Befehlszeilenanmeldung' nicht verfügbar.
Das Argument Anzeigetyp steuert die Funktionsweise der Option 'Befehlszeilenanmeldung'. Das Format von Anzeigetyp lautet:
Wird local@Anzeige_Terminalgerät angegeben, sucht der Anmeldeserver den X-Server und /dev/Anzeige_Terminalgerät auf demselben physischen Gerät und setzt voraus, daß eine Befehlszeilenanmeldung (normalerweise getty) auf dem Gerät ausgeführt wird. Wählt der Benutzer 'Befehlszeilenanmeldung', wird der X-Server beendet und ermöglicht den Zugriff auf die Befehlszeilenanmeldung (getty), die auf /dev/Anzeige_Terminalgerät ausgeführt wird.
Die Option 'Befehlszeilenanmeldung' kann für eine Anzeige deaktiviert werden, indem der Wert none als Anzeige_Terminalgerät angegeben wird. Der Standardwert für Anzeige_Terminalgerät ist console. Wird der Wert local angegeben, erhält Anzeige_Terminalgerät automatisch den Standardwert console. Bei Angabe von foreign wird die Option 'Befehlszeilenanmeldung' deaktiviert.
Die Option 'Befehlszeilenanmeldung' ist auf einer lokalen Anzeige deaktiviert, wenn der Anmeldeserver von der Befehlszeile aus gestartet wird.
Verfügt das Anmeldeserversystem über eine direkt angeschlossene Zeichenanzeige als Konsole, sollte Anzeige_Terminalgerät auf none gesetzt werden, damit die Option 'Befehlszeilenanmeldung' auf einer grafikfähigen Anmeldeanzeige deaktiviert wird.
Sie können aber auch Anzeige_Terminalgerät auf der Grafikanzeige in das Gerät für die Befehlszeilenanmeldung (getty) ändern, wenn dieses auf der Zeichenkonsole und der Grafikanzeige ausgeführt wird.
Befindet sich beispielsweise die Befehlzeilenanmeldung für die Grafikanzeige (getty) auf dem Gerät /dev/tty01 , ändern Sie den Wert von Anzeigetyp in local@tty01.
Der Anmeldeserver kann Anforderungen von Netzwerkanzeigen zur Anzeige eines Anmeldefensters entgegennehmen. Die Netzwerkanzeige ist normalerweise ein X-Terminal, kann aber auch eine Workstation sein.
Um Anforderungen von Netzwerkanzeigen zu verwalten, unterstützt der Anmeldeserver das Protokoll XDMCP (X Display Manager Protocol) 1.0. Es ermöglicht dem Server, die Anforderungen anzunehmen oder abzulehnen. Bei den meisten X-Terminals ist XDMCP integriert.
Wird ein X-Terminal konfiguriert, XDMCP direkt zu verwenden (Abfragemodus), wird dem X-Terminal der Hostname des Anmeldeserversystems mitgeteilt. Das X-Terminal nimmt dann beim Starten automatisch Kontakt mit dem Anmeldeserver auf, und dieser zeigt ein Anmeldefenster auf dem X-Terminal an. In der Dokumentation des X-Terminals wird beschrieben, wie das Terminal für den XDMCP-Direktmodus konfiguriert werden kann.
Die meisten X-Server unterstützen auch die Option -query . In diesem Modus verhält sich der X-Server wie ein X-Terminal und sendet eine Anforderung an den Anmeldeserver, damit dieser ein Anmeldefenster anzeigt. Wird beispielsweise der X-Server auf einer Grafikanzeige auf Workstation bridget gestartet, zeigt der Anmeldeserver anita eine Anmeldeanzeige auf dem X-Server an:
X -query anita
Wird ein X-Terminal konfiguriert, XDMCP indirekt zu verwenden, wird dem X-Terminal der Hostname des Anmeldeserversystems mitgeteilt. Das X-Terminal nimmt dann beim Starten automatisch Kontakt mit dem Anmeldeserver auf, und dieser zeigt in einem Auswahlfenster eine Liste der anderen Anmeldeserver-Hosts im Netzwerk an. Der Benutzer kann aus der Liste den Host wählen, der ein Anmeldefenster auf dem X-Terminal anzeigen soll. In der Dokumentation des X-Terminals wird beschrieben, wie das Terminal für den indirekten XDMCP-Modus konfiguriert werden kann.
Die meisten X-Server unterstützen die Option -indirect. In diesem Modus nimmt der X-Server im indirekten XDMCP-Modus Kontakt mit dem Anmeldeserver auf.
Ältere X-Terminals unterstützen möglicherweise XDMCP nicht. Damit der Anmeldeserver eine Anmeldeanzeige auf diesen Terminals anzeigen kann, muß der Name des X-Terminals in die Datei Xserversaufgenommen werden.
Da sich die Anzeige in einem Netzwerk befindet, muß Anzeigename den Hostnamen als Namenskomponente enthalten. Mit Anzeigeklasse können spezifische Ressourcen einer bestimmten Klasse von X-Terminals angegeben werden (die Klasse des X-Terminals können Sie der zugehörigen Dokumentation entnehmen). Der Wert foreign für Anzeigetyp weist den Anmeldeserver an, keinen eigenen X-Server zu starten, sondern eine Verbindung mit einem vorhandenen X-Server herzustellen. In diesem Fall wird X_Server_Befehl nicht angegeben.
Durch die folgenden Zeilen in der Datei Xservers zeigt der Anmeldeserver eine Anmeldeanzeige auf den beiden X-Terminals ruby und wolfie an, die XDMCP nicht unterstützen:
ruby.blackdog.com:0 AcmeXsta foreign wolfie:0 PandaCo foreign
Standardmäßig kann jeder Host im Netzwerk die Anzeige eines Anmeldefensters anfordern, der Zugriff auf den Anmeldeserver-Host hat. Der Zugriff auf den Anmeldeserver kann durch Ändern der Datei Xaccess eingeschränkt werden.
Um die Datei Xaccess zu ändern, kopieren Sie sie aus/usr/dt/config in das Verzeichnis /etc/dt/config . Nehmen Sie die gewünschten Änderungen in /etc/dt/config/Xaccess vor, und weisen Sie anschließend den Anmeldeserver durch folgenden Befehl an, die Datei erneut zu lesen:
/usr/dt/bin/dtconfig -reset
Dadurch wird der Befehl kill -HUP Anmeldeserver_Prozeß_ID ausgeführt.
Versucht ein Host, im direkten XDMCP-Modus eine Verbindung mit dem Anmeldeserver herzustellen, wird der Hostname mit den Einträgen in der Datei Xaccess verglichen. In dieser Datei sind die Hosts aufgeführt, die auf den Anmeldeserver zugreifen dürfen. Jeder Eintrag in Xaccess ist ein Hostname, der auch die Platzhalterzeichen * (Sternchen) und ? (Fragezeichen) enthalten kann. Ein * entspricht beliebig vielen und ein ? einem beliebigen Zeichen. Wird vor einem Eintrag ein ! (Ausrufezeichen) angegeben, ist dem betreffenden Host der Zugriff nicht gestattet.
Ein Beispiel: Die Datei Xaccess enthält die folgenden drei Einträge:
amazon.waterloo.com *.dept5.waterloo.com !*
Der erste Eintrag erlaubt dem Host amazon.waterloo.com den Zugriff auf den Anmeldeserver. Der zweite Eintrag gestattet allen Hosts den Zugriff, deren vollständiger Domain-Name mit dept5.waterloo.com endet. Der letzte Eintrag gibt an, daß allen anderen Hosts der Zugriff verweigert wird.
Versucht ein Host, im indirekten XDMCP-Modus eine Verbindung mit dem Anmeldeserver herzustellen, wird der Hostname mit den Einträgen in der Datei Xaccess verglichen. In dieser Datei sind die Hosts aufgeführt, die auf den Anmeldeserver zugreifen dürfen. Die Einträge in Xaccess entsprechen den Einträgen für den direkten XDMCP-Modus (einschließlich Platzhalterzeichen), werden aber zusätzlich mit der Zeichenfolge CHOOSER gekennzeichnet. Ein Beispiel:
amazon.waterloo.com CHOOSER BROADCAST *.dept5.waterloo.com CHOOSER BROADCAST !* CHOOSER BROADCAST
Wie im vorhergehenden Beispiel erlaubt der erste Eintrag dem Host amazon.waterloo.com den Zugriff auf den Anmeldeserver, der zweite allen Hosts, deren Domain-Name mit dept5.waterloo.com endet, und der letzte Eintrag verweigert allen anderen Hosts den Zugriff.
Nach der Zeichenfolge CHOOSER kann einer der folgenden Werte angegeben werden.
BROADCAST bewirkt, daß der Anmeldeserver eine Nachricht an alle Systeme seines Teilnetzwerks sendet, um eine Liste der verfügbaren Anmeldeserver-Hosts zu erstellen. Wird zusätzlich eine Liste angegeben, wird diese als Liste der verfügbaren Anmeldeserver-Hosts verwendet. Ein Beispiel:
amazon.waterloo.com CHOOSER shoal.waterloo.com alum.waterloo.com *.dept5.waterloo.com CHOOSER BROADCAST !* CHOOSER BROADCAST
Stellt amazon.waterloo.com eine Verbindung im indirekten XDMCP-Modus her, erhält das System eine Liste mit den beiden Hosts shoal und alum. Stellt alice.dept5.waterloo.com eine Verbindung her, enthält die Liste alle verfügbaren Anmeldeserver-Hosts im Teilnetzwerk des Anmeldeservers. Anforderungen anderer Hosts im indirekten XDMCP-Modus werden nicht akzeptiert.
Anstatt eine Liste der Hostnamen anzugeben, können auch wie im folgenden Beispiel ein oder mehrere Makros definiert werden, die eine Host-Liste angeben:
%list1 shoal.waterloo.com alum.waterloo.com amazon.waterloo.com CHOOSER %list1
Standardmäßig protokolliert der Anmeldeserver alle Fehler in der Datei /var/dt/Xerrors. Soll eine andere Datei verwendet werden, ändern Sie die Ressource Dtlogin.errorLogFile in der Konfigurationsdatei Xconfig. Das im Pfad angegebene Verzeichnis muß beim Start des Anmeldeservers bereits existieren.
Sollen die Fehler beispielsweise in der Datei /var/mylogs/Dterrors protokolliert werden, muß die Datei Xconfig folgende Zeile enthalten:
Dtlogin.errorLogFile: /var/mylogs/Dterrors
Wird der Anmeldeserver anschließend neu gestartet, schreibt er die Fehler in die Datei /var/mylogs/Dterrors. Das Verzeichnis /var/mylogs muß jedoch bereits vorhanden sein.
Soll der Anmeldeserver beim Booten des Systems nicht gestartet werden, geben Sie folgenden Befehl ein:
/usr/dt/bin/dtconfig -d
Der Anmeldeserver wird dann nicht automatisch ausgeführt, wenn das System neu gestartet wird.
Sie können den Anmeldeserver auch beenden, indem Sie die Prozeß-ID folgendermaßen löschen:
/usr/dt/bin/dtconfig -kill
Dadurch wird folgender Befehl ausgeführt: kill Anmeldeserver_Prozeß_ID.
Durch das Abbrechen des Anmeldeserver-Prozesses werden alle vom Server verwalteten Benutzersitzungen beendet.
Sie können den Anmeldeserver durch Löschen der Prozeß-ID beenden. Die Prozeß-ID wird in der Datei /var/dt/Xpid oder in der Datei gespeichert, die in derRessource Dtlogin.pidFile in der Konfigurationsdatei Xconfig angegeben ist.
Sind Sie beim Beenden des Anmeldeservers beim Desktop angemeldet, wird die Desktop-Sitzung sofort geschlossen.
Die Anmeldeanzeige stellt eine attraktive Alternative zu herkömmlichen Anmeldefenstern im Zeichenmodus dar und bietet ein Leistungsspektrum, das weit über die Möglichkeiten der Anmeldung im Zeichenmodus hinausgeht.
Wie bei der Anmeldung im Zeichenmodus muß der Benutzer einen Benutzernamen und ein Paßwort eingeben. Besteht Zugriffsberechtigung, startet der Anmeldeserver eine Desktop-Sitzung für den Benutzer. Beendet der Benutzer die Sitzung, zeigt der Anmeldeserver ein neues Anmeldefenster an, und der Prozeß wird wiederholt.
Die Anmeldeanzeige kann folgendermaßen angepaßt werden:
Das Erscheinungsbild der Anzeige ändern.
Die X-Zugriffsberechtigung für den X-Server konfigurieren.
Die Standardsprache ändern.
Befehle vor dem Anzeigen des Anmeldefensters ausführen.
Das Menü 'Sprachen' der Anmeldeanzeige ändern.
Den Befehl zum Starten der Benutzersitzung angeben.
Befehle vor dem Starten der Benutzersitzung ausführen.
Befehle nach dem Beenden der Benutzersitzung ausführen.
Jede dieser Aktionen kann für alle Anzeigen gemeinsam oder für jede Anzeige einzeln durchgeführt werden.
Das Erscheinungsbild der Anmeldeanzeige kann angepaßt werden, indem das Logo oder die Grafik, die Begrüßungsmeldungen und die Schriftarten geändert werden.
Um die Datei Xresources zu ändern, kopieren Sie sie aus /usr/dt/config/Sprache in das Verzeichnis /etc/dt/config/Sprache . Die vorgenommenen Änderungen werden beim nächsten Anzeigen des Anmeldefensters wirksam. Soll die Anmeldeanzeige sofort aktualisiert werden, wählen Sie 'Anmeldeanzeige zurücksetzen' im Menü 'Optionen'.
Folgende Attribute der Anmeldeanzeige können mit den Ressourcen in der Datei Xresources festgelegt werden:
Dtlogin*logo*bitmapFile - Bitmap- oder Pixmap-Datei für Logo
Dtlogin*greeting*persLabelString - Persönliche Begrüßungsmeldung
Dtlogin*greeting*labelString - Begrüßungsmeldung
Dtlogin*greeting*fontList - Schriftart für Begrüßungsmeldung
Dtlogin*labelFont - Schriftart für Schaltflächen und Beschriftungen
Dtlogin*textFont - Schriftart für Hilfe- und Fehlermeldungen
Dtlogin*Sprache*languageName - Alternativer Text für regionale Einstellungen Sprache
Das Logo wird mit der Ressource Dtlogin*logo*bitmapFile in der Datei Xresources festgelegt.
Es kann eine farbige Pixmap- oder eine Bitmap-Datei verwendet werden.
Im folgenden Beispiel wird die Bitmap-Datei Mylogo als Logo verwendet:
Dtlogin*logo*bitmapFile: /usr/local/lib/X11/dt/bitmaps/Mylogo.bm
Standardmäßig zeigt der Anmeldeserver die Meldung Willkommen auf Rechner Hostname in der Anmeldeanzeige an. Dieser Text kann folgendermaßen geändert werden:
Ändern Sie den Wert der Ressource Dtlogin*greeting*labelString in der Datei Xresources.
Die Ressource labelString kann den Wert %LocalHost% enthalten, der durch den Hostnamen des Anmeldeservers ersetzt wird, sowie den Wert %DisplayName%, für den der X-Server-Anzeigename eingesetzt wird.
Im folgenden Beispiel wird die Begrüßungsmeldung Hier ist Hostname! angezeigt:
Dtlogin*greeting*labelString: Hier ist %LocalHost%!
Nachdem der Benutzername eingegeben wurde, zeigt der Anmeldeserver die Standardmeldung Willkommen: Benutzername an. Dieser Text kann mit der Ressource Dtlogin*greeting*persLabelString in der Datei Xresources geändert werden. Der Wert von persLabelString kann die Variable %s enthalten, die durch den Benutzernamen ersetzt wird.
Im folgenden Beispiel wird die persönliche Begrüßungsmeldung in Hallo Benutzername geändert.
Dtlogin*greeting*persLabelString: Hallo %s
Die in der Anmeldeanzeige verwendeten Schriftarten können mit den folgenden Ressourcen in der Datei Xresources: geändert werden.
Dtlogin*greeting*fontList - Schriftart für Begrüßungsmeldungen
Dtlogin*labelFont - Schriftart für Schaltflächen und Beschriftungen
Dtlogin*textFont - Schriftart für Hilfe- und Fehlermeldungen
Mit folgendem Befehl können die verfügbaren Schriftarten abgerufen werden:
xlsfonts [-Optionen][-fn Muster]
Im folgenden Beispiel wird für die Begrüßungsmeldung eine große Schrift verwendet (der Wert muß in eine Zeile eingegeben werden):
Dtlogin*greeting*fontList: -dt-interface \ system-medium-r-normal-xxl*-*-*-*-*-*-*-*-*:
Soll im Menü 'Sprachen' der Anmeldeanzeige statt der Standardnamen landesspezifischer Text angezeigt werden, ändern Sie die Ressource Dtlogin*Sprache*languageName in der Datei Xresources:
Dtlogin*En_US*languageName: American
Der Text American wird ab jetzt statt des Standardnamens En_US angezeigt.
Die Funktionsweise der Anmeldeanzeige kann durch Ändern der entsprechenden Ressourcen in der Datei Xconfig angepaßt werden.
Kopieren Sie dazu die Datei Xconfig aus /usr/dt/config in das Verzeichnis /etc/dt/config. Nehmen Sie die gewünschten Änderungen in /etc/dt/config/Xconfig vor, und veranlassen Sie anschließend den Anmeldeserver mit dem folgenden Befehl, die Datei Xconfig neu zu lesen:
/usr/dt/bin/dtconfig -reset
Dadurch wird folgender Befehl ausgeführt: kill -HUP Anmeldeserver_Prozeß_ID.
Die Datei Xconfig enthält folgende Ressourcen:
Dtlogin*authorize - Xaccess - Dateispezifikation
Dtlogin*environment - X-Server-Umgebung
Dtlogin*language - Standardsprache
Dtlogin*languageList - Liste der Sprachen für das Menü 'Sprachen'
Dtlogin*resources - Xresources - Dateispezifikation
Dtlogin*setup - Xsetup - Dateispezifikation
Dtlogin*startup - Xstartup - Dateispezifikation
Dtlogin*session - Xsession - Dateispezifikation
Dtlogin*failsafeClient - Xfailsafe - Skriptspezifikation
Dtlogin*reset - Xreset - Skriptspezifikation
Dtlogin*userPath - PATH für Xsession und Xfailsafe
Dtlogin*systemPath - PATH für Xsetup , Xstartup und Xfailsafe
Dtlogin*systemShell - SHELL für Xsetup , Xstartup und Xfailsafe
Dtlogin.timeZone - Zeitzone für alle Skripts
In den folgenden Beispielen wird durch das Ändern einer Ressource in der Datei Xconfig die betreffende Funktion für alle Anzeigen angepaßt. Die mit einem * (Sternchen) gekennzeichneten Ressourcen können für jede Anzeige getrennt festgelegt werden. Dadurch können für einzelne Anzeigen angepaßte Anmeldefenster konfiguriert werden. Soll eine Ressource für eine bestimmte Anzeige festgelegt werden, geben Sie die Ressource als Dtlogin*Anzeigename *Ressource an. Folgendermaßen können Sie beispielsweise die benutzerbasierte Zugriffssteuerung für die Anzeige expo:0 deakivieren, jedoch für alle anderen Anzeigen aktiviert lassen:
Dtlogin*expo_0*authorize: False
Alle Sonderzeichen im Anzeigenamen (z. B. Doppelpunkte oder Punkte) werden durch Unterstriche ( _ ) ersetzt.
Standardmäßig steuert der Anmeldeserver die Zugriffsrechte für den X-Server für jeden Benutzer getrennt. Dazu werden Informationen in der Datei Home-Verzeichnis/.Xauthority gespeichert und geschützt. Nur Benutzer mit Leserechten für diese Datei können eine Verbindung mit dem X-Server herstellen. Normalerweise ist das die beste Methode, den Zugriff auf den X-Server zu steuern.
Eine Alternative zur benutzerbasierten ist die Zugriffssteuerung auf Host-Basis. Bei dieser Vorgehensweise kann jeder Benutzer auf einem Host mit Zugriffsberechtigung eine Verbindung mit dem X-Server herstellen. Es gibt folgende Gründe für die Verwendung der Zugriffssteuerung auf Host-Basis:
Ältere R2 und R3 X-Clients können mit der benutzerbasierten Zugriffssteuerung keine Verbindung mit dem X-Server herstellen.
In ungesicherten Netzwerken können die Berechtigungsinformationen abgefangen werden, die zwischen dem X-Client und dem X-Server im Netzwerk ausgetauscht werden.
Mit der Ressource Xconfig Dtlogin*authorize wird festgelegt, daß der Anmeldeserver die benutzerbasierte Zugriffssteuerung verwendet. Soll die Zugriffssteuerung auf Host-Basis erfolgen, ändern Sie den Wert der Ressource in False. Ein Beispiel:
Dtlogin*authorize: False
Sollen dem X-Server beim Start durch den Anmeldeserver eine oder zwei Umgebungsvariablen und -werte zur Verfügung gestellt werden, geben Sie diese mit der Ressource Dtlogin*environment in der Datei Xconfig an. Ein Beispiel:
Dtlogin*environment: VAR1=foo VAR2=bar
Der lokale X-Server erhält den Zugriff auf die Variablen VAR1 und VAR2. Die Variablen werden auch in die Skripts Xsession und Xfailsafe exportiert.
Wenn sich der Benutzer in der Anmeldeanzeige beim Desktop anmeldet, wird die Benutzersitzung mit den im Menü 'Sprachen' gewählten landesspezifischen Einstellungen ausgeführt. Wählt der Benutzer keine Sprache aus, wird die Standardeinstellung des Anmeldeservers verwendet. Die Standardsprache kann mit der Ressource Dtlogin*language in der Datei Xconfig festgelegt werden. Ein Beispiel:
Dtlogin*language: Ja_JP
Der Dokumentation des Systems können Sie entnehmen, welche Sprachen verfügbar sind.
Standardmäßig werden im Menü 'Sprachen' der Anmeldeanzeige alle im System installierten Sprachen angezeigt. Wählt der Benutzer eine Sprache aus der Liste, wird die Anmeldeanzeige in der gewählten Sprache erneut angezeigt. Meldet sich der Benutzer später an, wird die Desktop-Sitzung mit dieser Einstellung gestartet.
Sie können eine eigene Liste mit Sprachen erstellen, indem Sie die Ressource Dtlogin*languageList in der Datei Xconfig entsprechend ändern:
Dtlogin*languageList: En_US De_DE
Der Anmeldeserver zeigt jetzt nur die Einträge En_US und De_DE im Menü 'Sprachen' an.
Der Anmeldeserver führt nach dem Starten des X-Servers, jedoch vor dem Anzeigen des Anmeldefensters das Skript Xsetup aus. Xsetup wird mit der Zugriffsberechtigung 'root' ausgeführt und enthält Befehle, die vor dem Anzeigen des Anmeldefensters aufgerufen werden müssen.
Um die Datei Xsetup zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Beim nächsten Erscheinen der Anmeldeanzeige wird dann die geänderte Xsetup-Datei ausgeführt.
Nachdem Benutzername/Paßwort eingegeben und die Zugriffsberechtigung überprüft wurde, aber bevor die Benutzersitzung gestartet wird, führt der Anmeldeserver das Skript Xstartup aus. Xstartup wird mit der Zugriffsberechtigung 'root' ausgeführt und enthält Befehle, die vor dem Starten der Benutzersitzung ausgeführt werden müssen.
Um die Datei Xstartup, zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Meldet sich der Benutzer das nächste Mal an, wird die geänderte Xstartup-Datei ausgeführt.
Standardmäßig startet der Anmeldeserver die Benutzersitzung, indem er das Skript Xsession ausführt. Xsession wird mit der Zugriffsberechtigung des Benutzers ausgeführt und enthält die Befehle, die zum Starten des Desktop benötigt werden.
Aktualisieren Sie das Skript Xsession nicht direkt.
Informationen zur Anpassung des Starts der Desktop-Sitzung des Benutzers finden Sie in Kapitel 2.
Wählt der Benutzer im Untermenü 'Sitzungen' des Menüs 'Optionen' die Option 'Failsafe-Sitzungen', führt der Anmeldeserver das Skript Xfailsafe aus. Xfailsafe wird mit der Zugriffsberechtigung des Benutzers ausgeführt und enthält die Befehle, die zum Starten einer minimalen Fensterumgebung benötigt werden (normalerweise ein Terminalfenster und ein optionaler Fenstermanager).
Um die Datei Xfailsafe zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Meldet sich der Benutzer das nächste Mal an, wird die geänderte Datei ausgeführt.
Nachdem der Benutzer die Desktop- oder Failsafe-Sitzung beendet hat, führt der Anmeldeserver das Skript Xreset aus. Xreset wird mit der Zugriffsberechtigung 'root' ausgeführt und enthält Befehle, die nach dem Beenden der Benutzersitzung ausgeführt werden müssen.
Um die Datei Xreset zu ändern, kopieren Sie sie aus /usr/dt/config in das Verzeichnis /etc/dt/config. Bei der nächsten Sitzung des Benutzers wird die geänderte Xreset-Datei verwendet.
Die Umgebung des Anmeldeservers wird in die Skripts Xsetup , Xstartup, Xsession, Xfailsafe und Xreset exportiert. Tabelle 1-1enthält eine Beschreibung der verschiedenen Werte. Es können auch weitere Variablen vom Anmeldeserver exportiert werden.
Tabelle 1-1 Umgebung des Anmeldeservers
Umgebungs- variable |
Xsetup |
Xstartup |
Xsession Xfailsafe |
Xreset |
Beschreibung |
---|---|---|---|---|---|
X |
X |
X |
X |
Standard- oder gewählte Sprache. |
|
X |
X |
X |
X |
Andere X-Berechtigungsdatei (optional). |
|
X |
X |
X |
X |
Wert der Ressource Dtlogin*userPath (Xsession, Xfailsafe) oder Dtlogin*systemPath (Xsetup, Xstartup, Xreset). |
|
X |
X |
X |
X |
Verbindungsnummer des X-Servers. |
|
X |
X |
X |
X |
In Datei /etc/passwd (Xsession, Xfailsafe) oder Ressource Dtlogin*systemShell (Xsetup, Xstartup , Xreset) angegebene Shell. |
|
X |
X |
X |
X |
Wert der Ressource Dtlogin.timeZone oder vom System vorgegebene Zeitzone. |
|
|
X |
X |
X |
Benutzername |
|
|
X |
X |
X |
In /etc/passwd angegebenes Home-Verzeichnis. |
|
|
X |
X |
X |
Benutzername |
Der Anmeldeserver setzt die Umgebungsvariable PATH beim Ausführen der Skripts Xsession und Xfailsafe. Sie könne auch einen anderen Pfad für die Skripts angeben.
Der Benutzerpfad wird mit der Ressource Dtlogin*userPath in der Datei Xconfig festgelegt. Ein Beispiel:
Dtlogin*userPath:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11
Der Systempfad wird mit der Ressource Dtlogin*systemPath in der Datei Xconfig festgelegt. Ein Beispiel:
Dtlogin*systemPath: /usr/bin/X11:/etc:/bin:/usr/bin:/usr/ucb
Der Anmeldeserver setzt die Umgebungsvariable SHELL beim Ausführen der Skripts Xsetup, Xstartup und Xfailsafe. Der Standardwert ist /bin/sh. Soll eine andere Shell für diese Skripts verwendet werden, ändern Sie den Wert der Ressource Dtlogin*systemShell in der Datei Xconfig. Ein Beispiel:
Dtlogin*systemShell: /bin/ksh
Der Anmeldeserver setzt die Umgebungsvariable TZ beim Ausführen der Skripts Xsetup, Xstartup, Xsession, Xfailsafe und Xreset. Der Standardwert wird aus dem System ermittelt und muß normalerweise nicht geändert werden. Soll eine andere Zeitzone verwendet werden, ändern Sie den Wert der Ressource Dtlogin.timeZone in der Datei Xconfig. Ein Beispiel:
Dtlogin.timeZone: CST6CDT
Beim Aufrufen des Anmeldeservers wird ein dtlogin-Prozeß gestartet. Der Prozeß liest die Datei Xconfig, um die Anfangskonfiguration des Anmeldeservers zu ermitteln und die anderen Server-Konfigurationsdateien zu suchen. Der Anmeldeserver liest dann die Datei Xservers, um festzustellen, ob explizit zu verwaltende Anzeigen vorhanden sind, und anschließend die Datei Xaccess, um den Zugriff zu steuern.
Stellt der Anmeldeserver in der Datei Xservers fest, daß eine lokale Anzeige verwaltet werden muß, startet er nach Maßgabe der Informationen in der Datei einen X-Server und zeigt auf dieser Anzeige ein Anmeldefenster an.
Stellt der Anmeldeserver in der Datei Xservers fest, daß eine Netzwerkanzeige verwaltet werden muß, wird unterstellt, daß bereits ein X-Server mit dem angegebenen Anzeigenamen läuft und dort ein Anmeldefenster angezeigt.
Anschließend wartet der Anmeldeserver auf XDMCP-Anforderungen aus dem Netzwerk.
Für jede verwaltete Anzeige erstellt der Anmeldeserver zuerst einen neuen dtlogin-Prozeß. Verwaltet der Server n Anzeigen, sind n+1 dtlogin-Prozesse vorhanden. Der Anmeldeserver führt dann das Skript Xsetup aus, lädt die Datei Xresources und startet dtgreet, um das Anmeldefenster anzuzeigen. Nachdem der Benutzername und das Paßwort eingegeben und die Zugriffsberechtigung geprüft wurde, wird zuerst das Skript Xstartup und anschließend das Skript Xsession oder Xfailsafe ausgeführt. Nachdem der Benutzer die Sitzung beendet hat, wird noch das Skript Xreset vom Anmeldeserver gestartet.
Erhält der Anmeldeserver eine indirekte XDMCP-Anforderung, führt er dtchooser aus, um eine Liste der Anmeldeserver-Hosts auf der Anzeige auszugeben. Wählt der Benutzer einen Host aus der Liste, verwaltet dieser Anmeldeserver die Anzeige.
Bei den Konfigurationsdateien Xaccess, Xconfig, Xfailsafe, Xreset, Sprache/Xresources, Xservers , Xsetup und Xstartup sucht der Anmeldeserver standardmäßig zuerst im Verzeichnis /etc/dt/config und dann in /usr/dt/config. Er verwendet dann die zuerst gefundene Datei.
Die Dateien des Anmeldemanagers befinden sich in folgenden Standardverzeichnissen:
/usr/dt/bin/dtlogin - Der Anmeldeserver und Anzeigemanager.
/usr/dt/bin/dtgreet - Zeigt ein Anmeldefenster für eine Anzeige an.
/usr/dt/bin/dtchooser - Zeigt ein Auswahlfenster für eine Anzeige an.
/usr/dt/bin/Xsession - Startet eine Desktop-Sitzung.
/usr/dt/config/Xfailsafe - Startet eine Failsafe-Sitzung.
/usr/dt/config/Xconfig - Konfigurationsdatei des Anmeldeservers.
/usr/dt/config/Xservers - Anzeigebeschreibungsdatei des Anmeldeservers.
/usr/dt/config/Xaccess - Zugriffsbeschreibungsdatei des Anmeldeservers.
/usr/dt/config/Sprache/Xresources - Anzeige-Layoutressourcen.
/usr/dt/config/Xsetup - Setup-Datei für die Anzeige.
/usr/dt/config/Xstartup - Startdatei zur Sitzungsvorbereitung.
/usr/dt/config/Xreset - Rücksetzungsdatei nach der Sitzung.
/var/dt/Xpid - Prozeß-ID des Anmeldeservers.
/var/dt/Xerrors - Fehlerprotokolldatei des Anmeldeservers.