# Anmeldemanager konfigurieren

Beim Anmeldemanager handelt es sich um einen Server
, über den die Anzeige eines Anmeldefensters, die Identifikation von Benutzern
sowie der Start einer Benutzersitzung
gesteuert wird. Die Anmeldung am grafischen Bildschirm bietet eine attraktive Alternative zur herkömmlichen Anmeldung im Zeichenmodus an Bitmap-Bildschirmen. Bildschirme, die über den Anmelde-Server verwaltet werden, können direkt an den Anmelde-Server
oder an eine Xstation oder Datenstation im Netz angeschlossen werden.

Der Anmelde-Server kann nur durch den Erstbenutzer gestartet, gestoppt oder angepaßt werden.

SAG.LogMg.mkr.2
SAG.LogMg.mkr.3
SAG.LogMg.mkr.6
SAG.LogMg.mkr.7
SAG.LogMg.mkr.10
SAG.LogMg.mkr.12
SAG.LogMg.mkr.13

Der Anmelde-Server:

- kann ein Anmeldefenster auf Bitmap-Bildschirmen sofort oder auf Aufforderung auf lokalen Bitmap-Bildschirmen oder Bitmap-Bildschirmen im Netz anzeigen.

- ermöglicht den direkten Anschluß von Zeichenkonsolenanzeigen.

- kann ein Auswahlfenster anzeigen, über das Benutzer Anmeldefenster anderer Anmelde-Server im Netz anzeigen können.

- gestattet den gesteuerten Zugriff auf den Anmelde-Server.

- ermöglicht den Zugriff auf die herkömmliche Anmeldung im Zeichenmodus

Bildschirme, die über den Anmeldemanager verwaltet werden, können direkt an den Anmeldemanager-Server oder an eine Xstation oder Datenstation im Netz angeschlossen sein. Bei lokalen Bildschirmen startet der Anmelde-Server automatisch einen X-Server und zeigt ein Anmeldefenster an. Bei Bildschirmen im Netz, wie z. B. Xstations, unterstützt der Anmelde-Server X Display Manager Protocol (XDMCP) 1.0, welches Bildschirmen ermöglicht, die Anzeige eines Anmeldefensters beim Anmelde-Server anzufordern.

## Anmelde-Server starten

Normalerweise wird der Anmelde-Server
beim booten des Systems gestartet. Der
Anmelde-Server kann aber auch über die Befehlszeile gestartet werden.

- Soll der Anmelde-Server beim booten des Systems gestartet werden, folgendes eingeben:

  `/usr/dt/bin/dtconfig -e`

  Damit wird der Anmelde-Server beim booten des Systems automatisch gestartet.

- Um den Anmelde-Server über die Befehlszeile zu starten, folgendes eingeben:

  `/usr/dt/bin/dtlogin -daemon`

Obwohl der Anmelde-Server auch über die Befehlszeile gestartet werden kann, damit temporäre Konfigurationen getestet werden können, sollte der Anmelde-Server normalerweise beim booten des Systems gestartet werden.

## Lokale Bildschirme und Bildschirme im Netz verwalten

SAG.LogMg.mkr.4 zeigt eine mögliche Anmelde-Serverkonfiguration.

### Mögliche Anmelde-Serverkonfiguration

### Prozeß-ID des
Anmelde-Servers feststellen

Standardmäßig wird die Prozeß-ID des Anmelde-Servers in der Datei `/var/dt/Xpid`
gespeichert.

Um eine Änderung vorzunehmen, kann die Ressource `Dtlogin.pidFile` in der Datei `Xconfig`
gesetzt werden. Wird eine Änderung vorgenommen, muß das angegebene Verzeichnis beim Start des Anmelde-Servers bereits vorhanden sein.

Um eine Änderung in der Datei `Xconfig` vorzunehmen, wird `Xconfig` `Xconfig` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Nach der Änderung von `/etc/dt/config/Xconfig` wird der Anmelde-Server angewiesen, die Datei `Xconfig` erneut zu lesen, indem folgendes eingegeben wird:

    /usr/dt/bin/dtconfig -reset

Damit wird der Befehl `kill -HUP` Prozeß-ID des Anmelde-Servers gegeben.

Um beispielsweise die Prozeß-ID des Anmelde-Servers in `/var/myservers/Dtpid` zu speichern, muß in der Datei `Xconfig` folgende Angabe vorhanden sein:

    Dtlogin.pidFile: /var/myservers/Dtpid

Wird der Anmelde-Server erneut gestartet, wird die Prozeß-ID des Anmelde-Servers in `/var/myservers/Dtpid
` gespeichert. Das Verzeichnis `/var/myservers` muß beim Start des Anmelde-Servers bereits vorhanden sein.

### Anmeldefenster an einem lokalen Bildschirm anzeigen

Beim Systemstart überprüft der Anmelde-Server die Datei `Xservers
`, um festzustellen, ob ein X-Server gestartet werden muß, und ob und wie Anmeldefenster am lokalen Bildschirm oder an Bildschirmen im Netz angezeigt werden sollen.

Um eine Änderung in der Datei `Xservers` vorzunehmen, wird `Xservers` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Nach der Änderung von `/etc/dt/config/Xservers` wird der Anmelde-Server angewiesen, bei folgender Eingabe die Datei `Xservers` erneut zu lesen:

    /usr/dt/bin/dtconfig -reset

Damit wird der Befehl `kill -HUP` Prozeß-ID des Anmelde-Servers gegeben.

Eine Zeile in der Datei `Xservers`
hat folgendes Format:

    anzeige_name anzeige_klasse anzeige_typ X_server_befehl

wobei die einzelnen Elemente folgende Bedeutung haben:

anzeige_name | Teilt dem Anmelde-Server den für die Verbindung zum X-Server zu verwendenden Verbindungsnamen mit (im folgenden Beispiel: :0). Ein Wert * (Stern) wird erweitert zu host name:0. Die angegebene Nummer muß der in X_server_befehl Verbindungsnummer angegebenen Nummer entsprechen.
anzeige_klasse | Gibt für diesen Bildschirm spezifische Ressourcen an (im folgenden Beispiel: `Local`).
anzeige_typ | Teilt dem Anmelde-Server mit, ob es sich bei dem Bildschirm um einen lokalen Bildschirm oder einen Bildschirm im Netz handelt, und wie die Option für die Anmeldung über Befehlszeile im Anmeldefenster verwaltet wird (im folgenden Beispiel: `local@console` ).
X_server_befehl | Gibt die Befehlszeile, Verbindungsnummer und weitere Optionen an, die der Anmelde-Server benötigt, um den X-Server zu starten (im folgenden Beispiel: `/usr/bin/X11/X :0`). Die angegebene Verbindungsnummer muß der in anzeige_name angegebenen Nummer entsprechen.

Eine Zeile in der Datei `Xservers` sieht standardmäßig ungefähr folgendermaßen aus:

    :0 Local local@console /usr/bin/X11/X :0

### Anmelde-Server ohne lokalen Bildschirm
ausführen

Verfügt das Anmelde-Server-System über keinen
Bitmap-Bildschirm, wird der Anmelde-Server ohne lokalen Bildschirm
ausgeführt, indem die Zeile für den lokalen Bildschirm in der Datei `Xservers`
mit Hilfe eines `#` (Nummernzeichen) auf Kommentar gesetzt wird. Beispiel:

    # :0 Local local@console /usr/bin/X11/X :0

Nach dem Start läuft der Anmelde-Server im Hintergrund und wartet auf Anforderungen von Bildschirmen im Netz.

### Auf Anmeldung über Befehlszeile an einem lokalen Bildschirm zugreifen

Wählt der Benutzer im Anmeldefenster 'Anmeldung über Befehlszeile'
aus, beendet der Anmelde-Server den X-Server temporär und gestattet den Zugriff auf die herkömmliche Anmeldung über Befehlszeile, die auf einer Datenstationseinheit mit Bitmap-Bildschirm ausgeführt wird. Nachdem der Benutzer sich an- und wieder abgemeldet hat, bzw. nach der Überschreitung eines angegebenen Zeitlimits, startet der Anmelde-Server den X-Server erneut.

Auf die Option
'Anmeldung über Befehlszeile' kann bei Bildschirmen im Netz nicht zugegriffen werden.

Die Angabe anzeige_typ steuert das Verhalten der Anmeldung über Befehlszeile. anzeige_typ hat folgendes Format:

- `local@`anzeige_ terminal_gerät

- `
  local`

- `
  foreign`

Wird `local`@anzeige_terminal_gerät angegeben, nimmt der Anmelde-Server an, daß der X-Server und `/dev/`anzeige_terminal_gerät sich auf derselben physischen Einheit befinden, und daß eine Anmeldung über Befehlszeile (normalerweise `getty`) auf der Einheit ausgeführt wird. Wählt der Benutzer 'Anmeldung über Befehlszeile' aus, wird der X-Server beendet, und es kann auf die Anmeldung über Befehlszeile (`getty`) zugegriffen werden, die auf `/dev/`anzeige_terminal_gerät ausgeführt wird.

Um die Option 'Anmeldung über Befehlszeile' an einem Bildschirm zu inaktivieren, muß für anzeige_terminal_gerät none angegeben werden. Standardmäßig wird bei anzeige_terminal_gerät `console` angegeben. Wird `local` angegeben, wird für anzeige_terminal_gerät automatisch der Standardwert `console` festgelegt. Wird `foreign` angegeben, wird die Option 'Anmeldung über Befehlszeile' inaktiviert.

Wird der Anmelde-Server über die Befehlszeile gestartet, wird die Option 'Anmeldung über Befehlszeile' am lokalen Bildschirm inaktiviert.

### Konsole mit zeichenorientierter Anzeige verwenden

Verfügt das Anmelde-Server-System über einen direkt
angeschlossenen nicht grafikfähigen Bildschirm, der als Konsole dient, kann anzeige_terminal_gerät auf `none` gesetzt werden, um die Anmeldung über Befehlszeile im Anmeldefenster des Bitmap-Bildschirms zu inaktivieren.

Alternativ kann, wenn die Anmeldung über Befehlszeile ``(getty`)
` sowohl auf der Konsole mit zeichenorientierter Anzeige als auch auf dem Bitmap-Bildschirm ausgeführt wird, anzeige_terminal_gerät auf die Einheit mit Anmeldung über Befehlszeile (`getty`) für Bitmap-Bildschirm gesetzt werden.

Befindet sich beispielsweise die 'Anmeldung über Befehlszeile' (`getty`) für Bitmap-Bildschirm auf der Einheit `/dev/tty01`, kann anzeige_typ auf `local@tty01` festgelegt werden.

### Anmeldefenster an einem Bildschirm im Netz anzeigen

Der Anmelde-Server kann Anforderungen von Bildschirmen im Netz entgegennehmen, ein Anmeldefenster an diesem bestimmten Bildschirm anzuzeigen. Bei dem Bildschirm im Netz handelt es sich normalerweise um eine Xstation, es kann aber auch eine Datenstation sein.

Um Anforderungen von Bildschirmen im Netz zu verwalten, unterstützt der Anmelde-Server das X Display Manager Protocol (XDMCP)
1.0. Dieses Protokoll ermöglicht dem Anmelde-Server, Anforderungen von Bildschirmen im Netz auszuhandeln, zu akzeptieren oder zurückzuweisen. Bei den meisten Xstations ist XDMCP integriert.

#### XDMCP-Direktanforderung von
Bildschirmen im Netz

Wird eine Xstation so konfiguriert, daß der XDMCP-Direktmodus
(Abfragemodus) verwendet wird, wird der Xstation der Host-Name des Anmelde-Server-Hosts mitgeteilt. Beim booten der Xstation geht automatisch eine Anforderung an den Anmelde-Server, und dieser zeigt ein Anmeldefenster an der Xstation an. Informationen zur Konfiguration einer Xstation für XDMCP-Direktmodus können der Dokumentation zur Xstation entnommen werden.

Die meisten X-Server unterstützen auch die Option `-query`
. In diesem Modus verhält sich der X-Server, als ob er eine Xstation sei, und sendet eine Aufforderung zur Anzeige eines Anmeldefensters auf dem X-Server direkt an den Anmelde-Server. Wird beispielsweise der X-Server auf einem Bitmap-Bildschirm auf der Datenstation `bridget` gestartet, wird der Anmelde-Server `anita` ein Anmeldefenster auf dem X-Server anzeigen:

    X -query anita

#### Indirekte XDMCP-Anforderungen
von Bildschirmen im Netz

Wird eine Xstation so konfiguriert, daß der indirekte XDMCP-Modus verwendet wird, wird der Xstation der Host-Name des Anmelde-Server-Hosts mitgeteilt. Beim booten der Xstation geht eine Anforderung an den Anmelde-Server, der daraufhin ein Auswahlfenster mit weiteren Anmelde-Server-Hosts im Netz anzeigt. Aus dieser Liste kann der Benutzer einen Host auswählen, der dann ein Anmeldefenster auf der Xstation des Benutzers anzeigt. Informationen zur Konfiguration einer Xstation für den indirekten XDMCP-Modus können der Dokumentation zur Xstation entnommen werden.

Wie beim Direktmodus unterstützen die meisten X-Server die Option `-indirect`
, durch die ein X-Server im indirekten XDMCP-Modus Verbindung zum Anmelde-Server aufnimmt.

#### Bildschirme im Netz
ohne XDMCP verwalten

Ältere Xstations unterstützen möglicherweise XDMCP nicht. Damit der Anmelde-Server ein Anmeldefenster auf diesen Xstations anzeigen kann, muß der Name der Xstation in der Datei `Xservers` enthalten sein.

#### Beispiel

Folgende Zeilen in der Datei `Xservers` geben dem Anmelde-Server an, daß Anmeldefenster an zwei Xstations ohne XDMCP, `ruby` und `wolfie` angezeigt werden sollen:

    ruby.blackdog.com:0 AcmeXsta foreign
    wolfie:0 PandaCo foreign

Da sich der Bildschirm im Netz befindet, enthält anzeige_name den Host-Namen als Teil des Namens. Bei anzeige_ klasse können Ressourcen angegeben werden, die für eine bestimmte Klasse von Xstations spezifisch sind. (Zu welcher Bildschirmklasse eine Xstation gehört, kann der zugehörigen Dokumentation entnommen werden.) Wird bei anzeige_typ `foreign` angegeben, wird der Anmelde-Server angewiesen, eine Verbindung zu einem bereits vorhandenen X-Server herzustellen, statt einen eigenen X-Server zu starten. In diesem Fall erfolgt für X_server_befehl keine Angabe.

### Zugriff auf
Anmelde-Server steuern

Standardmäßig kann jeder Host im Netz, der Zugriff auf den Anmelde-Server-Host hat, die Anzeige eines Anmeldefensters anfordern. Der Zugriff auf den Anmelde-Server kann durch Änderung der Datei `Xaccess`
eingeschränkt werden.

Um eine Änderung in der Datei `Xaccess` `Xaccess` vorzunehmen, wird `Xaccess` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Nach der Änderung von `/etc/dt/config/Xaccess` wird der Anmelde-Server angewiesen, die Datei `Xaccess` erneut zu lesen, indem folgendes eingegeben wird:

    /usr/dt/bin/dtconfig -reset

Damit wird der Befehl `kill -HUP` Prozeß-ID des Anmelde-Servers gegeben.

#### XDMCP-Direktmodus

Versucht ein Host, über den
XDMCP-Direktmodus eine Verbindung zum Anmelde-Server herzustellen, wird der Host-Name mit den Einträgen in der Datei
`Xaccess` verglichen, um festzustellen, ob dem Host der Zugriff auf den Anmelde-Server gestattet ist. Bei den Einträgen in der Datei `Xaccess` handelt es sich um Namen von Hosts, denen der Zugriff auf den Anmelde-Server gestattet ist. Diese Host-Namen können auch die Platzhalterzeichen * (Stern) und ? (Fragezeichen) enthalten. Ein * (Stern) entspricht keinem oder mehr Zeichen, ein ? (Fragezeichen) entspricht einem beliebigen Zeichen. Ein ! (Ausrufezeichen) vor einem Eintrag gibt an, daß dem entsprechenden Host der Zugriff nicht gestattet ist.

Beispiel einer Datei `Xaccess` mit drei Einträgen:

    amazon.waterloo.com
    *.dept5.waterloo.com
    !*

Der erste Eintrag gestattet dem Host `amazon.waterloo.com` den Zugriff auf den Anmelde-Server, der zweite Eintrag gestattet jedem Host den Zugriff, dessen vollständiger Domänenname auf `dept5.waterloo.com` endet. Der letzte Eintrag gibt an, daß jedem anderen Host der Zugriff nicht gestattet ist.

#### Indirekter XDMCP-Modus

Versucht ein Host, über den indirekten
XDMCP-Modus eine Verbindung zum Anmelde-Server herzustellen, wird der Host-Name mit den Einträgen in der Datei `Xaccess` verglichen, um festzustellen, ob dem Host der Zugriff auf den Anmelde-Server gestattet ist. Die Einträge in der Datei `Xaccess` entsprechen den Einträgen im XDMCP-Direktmodus einschließlich der Platzhalterzeichen, werden aber mit einer Zeichenfolge
`CHOOSER
` markiert. Beispiel:

    amazon.waterloo.com   CHOOSER BROADCAST
    *.dept5.waterloo.com  CHOOSER BROADCAST
    !*  CHOOSER BROADCAST

Auch hier gestattet der erste Eintrag dem Host `amazon.waterloo.com` den Zugriff auf den Anmelde-Server, der zweite Eintrag gestattet jedem Host den Zugriff, dessen vollständiger Domänenname auf `dept5.waterloo.com` endet. Der letzte Eintrag gibt an, daß jedem anderen Host der Zugriff nicht gestattet ist.

Nach der Zeichenfolge `CHOOSER`
kann eine der folgenden Angaben stehen:

- `BROADCAST`

- liste der hostnamen

`BROADCAST` bedeutet, daß der Anmelde-Server eine Anforderung zur Generierung einer Liste verfügbarer Anmelde-Server-Hosts an das Teilnetz des Anmelde-Servers sendet. Wird eine Liste mit Host-Namen angegeben, wird diese Liste als Liste verfügbarer Anmelde-Hosts verwendet. Beispiel:

    amazon.waterloo.com   CHOOSER shoal.waterloo.com alum.waterloo.com
    *.dept5.waterloo.com  CHOOSER BROADCAST
    !*  CHOOSER BROADCAST

Stellt `amazon.waterloo.com` eine Verbindung über den indirekten XDMCP-Modus her, wird eine Liste angezeigt, die aus `shoal` und `alum` besteht. Stellt `alice.dept5.waterloo.com` eine Verbindung her, wird eine Liste aller verfügbarer Anmelde-Server-Hosts im Teilnetz des Anmelde-Servers angezeigt. Anforderungen anderer Anmelde-Server im indirekten XDMCP-Modus werden nicht akzeptiert.

Eine weitere Möglichkeit, eine Liste mit Host-Namen anzugeben, besteht darin, ein oder mehrere Makros zu definieren, die die Liste der Host-Namen enthalten. Beispiel:

    %list1   shoal.waterloo.com alum.waterloo.com
    amazon.waterloo.com  CHOOSER %list1

## Fehlerprüfung

Standardmäßig zeichnet der Anmelde-Server Fehler in der Datei systematisch auf
`/var/dt/Xerrors`. Um eine Änderung vorzunehmen, kann die Ressource `Dtlogin.errorLogFile` in der Datei `Xconfig` festgelegt werden. Das angegebene Verzeichnis muß beim Start des Anmelde-Servers bereits vorhanden sein.

Damit beispielsweise der Anmelde-Server Fehler in der Datei `/var/mylogs/Dterrors` systematisch aufzeichnet, muß die Datei `Xconfig` folgende Angabe enthalten:

    Dtlogin.errorLogFile: /var/mylogs/Dterrors

Wird der Anmelde-Server erneut gestartet, zeichnet der Anmelde-Server Fehler in der Datei systematisch auf`/var/mylogs/Dterrors`.
Das Verzeichnis `/var/mylogs` muß beim Start des Anmelde-Servers bereits vorhanden sein.

## Anmelde-Server
stoppen

- Soll der automatische Start des
  Anmelde-Servers beim booten des Systems inaktiviert werden, muß folgendes eingegeben werden:

  `/usr/dt/bin/dtconfig -d`

  Damit wird der Anmelde-Server beim nächsten booten des Systems nicht gestartet.

- Soll der Anmelde-Server durch Löschen der Prozeß-ID gestoppt werden, muß folgendes eingegeben werden:

  `/usr/dt/bin/dtconfig -kill`

  Damit wird der Befehl `kill` Prozeß-ID des Anmelde-Servers gegeben.

Wird die Prozeß-ID des
Anmelde-Servers gelöscht, werden alle vom Anmelde-Server verwalteten Benutzer-Sessions beendet.

Der Anmelde-Server kann auch durch Löschen der Prozeß-ID gestoppt werden. Die Prozeß-ID des Anmelde-Servers ist in `/var/dt/Xpid` oder in `Xconfig` durch die in der Ressource `Dtlogin.pidFile` angegebenen Datei gespeichert.

Ist der Benutzer zum Zeitpunkt, an dem er den Anmelde-Server löscht, auf dem Desktop angemeldet, wird die Desktop-Session sofort beendet.

## Anmeldefenster

Das vom Anmelde-Server angezeigte Anmeldefenster stellt eine attraktive Alternative zu herkömmlichen Anmeldefenstern im Zeichenmodus dar und bietet dem Benutzer ein Leistungsspektrum, das über die Möglichkeiten einer Anmeldung im Zeichenmodus hinausgeht.

### Desktop-Anmeldefenster

Wie bei der Anmeldung im Zeichenmodus gibt der Benutzer einen Benutzernamen und anschließend ein Kennwort ein. Wird der Benutzer identifiziert, startet der Anmelde-Server eine Desktop-Session für den Benutzer. Verläßt der Benutzer die Desktop-Session, zeigt der Anmelde-Server ein neues Anmeldefenster an, und der Prozeß beginnt von neuem.

Das Anmeldefenster kann angepaßt werden, indem

- das Erscheinungsbild des Anmeldefensters geändert wird.

- X-Server-Berechtigungen konfiguriert werden.

- die Standardsprache geändert wird.

- vor der Anzeige des Anmeldefensters Befehle eingegeben werden.

- der Inhalt des Sprachenmenüs des Anmeldefensters geändert wird.

- der Befehl zum Start der Benutzersession angegeben wird.

- vor dem Start der Desktop-Session des Benutzers Befehle eingegeben werden.

- nach Beendigung der Benutzer-Session Befehle eingegeben werden.

Dies kann jeweils für alle Bildschirme oder aber für jeden einzelnen Bildschirm erfolgen.

## Erscheinungsbild des Anmeldefensters ändern

Das Erscheinungsbild des
Anmeldefensters kann angepaßt werden, indem das Logo oder die Grafik, die Begrüßungsnachrichten und die Schriftarten geändert werden.

Um eine Änderung in der Datei `Xresources` vorzunehmen, wird `Xresources` aus `/usr/dt/config/`sprache in `/etc/dt/config/`sprache kopiert. Beim nächsten Aufruf des Anmeldefensters werden alle Änderungen wirksam. Um die Neuanzeige eines Anmeldefensters zu erzwingen, im Menü 'Optionen' des Anmeldefensters 'Anmeldefenster zurücksetzen' auswählen.

Zu den Attributen des Anmeldefensters, die durch Ressourcenspezifikationen in der Datei `Xresources`
festgelegt werden können, gehören:

`Dtlogin*logo*bitmapFile` | Bitmap- oder Pixmap-Datei für die Anzeige als Logoabbild
`Dtlogin*greeting*labelString` | Begrüßungsnachricht
`Dtlogin*greeting*persLabelString` | Angepaßte Begrüßungsnachricht
`Dtlogin*greeting*fontList` | Schriftart für Begrüßungsnachrichten
`Dtlogin*labelFont` | Schriftart für Tasten und Bezeichnungen
`Dtlogin*textFont` | Schriftart für Hilfe und Fehlermeldungen
`Dtlogin*sprache*languageName` | Alternativtext für länderspezifische Angaben für sprache

### Logo ändern

- Die Ressource `Dtlogin*logo*bitmapFile` in der Datei `Xresources` festlegen.

  Das Logo kann als farbige Pixmap- oder als Bitmap-Datei vorliegen.

Im folgenden Beispiel wird die Bitmap-Datei `Mylogo` als Logo verwendet:

    Dtlogin*logo*bitmapFile: /usr/local/lib/X11/dt/bitmaps/Mylogo.bm

### Begrüßungsnachricht
ändern

Standardmäßig zeigt der Anmelde-Server die Nachricht `Willkommen` auf Rechner hostname im Anmeldefenster an. Diese Nachricht kann folgendermaßen geändert werden:

- Die Ressource `Dtlogin*greeting*labelString` in `Xresources`setzen.

  Der Wert der Ressource `labelString` kann die Variable %Lokaler Host%, die durch den Host-Namen des Anmelde-Servers ersetzt wird, und die Variable % Anzeige Name%, die durch den Namen des X-Servers ersetzt wird, an dessen Bildschirm die Nachricht angezeigt wird, enthalten.

Im folgenden Beispiel wird die Begrüßungsnachricht in `Hier ist hostname!` geändert:

    Dtlogin*greeting*labelString: Hier ist %LocalHost%!

Nach Eingabe des Benutzernamens zeigt der Anmelde-Server standardmäßig die Nachricht `Willkommen: benutzername` an. Diese Nachricht kann geändert werden, indem die Ressource `Dtlogin*greeting*perslabelString` in `Xresources` festgelegt wird. Der Wert von `perslabelString` kann die Variable %s enthalten, die durch benutzername ersetzt wird.

Im folgenden Beispiel wird die angepaßte Begrüßungsnachricht in `Hallo` benutzername geändert.

    Dtlogin*greeting*persLabelString: Hallo %s

### Schriftarten ändern

Die im Anmeldefenster verwendeten Schriftarten können geändert werden, indem eine der folgenden Schriftartressourcen in `Xresources` geändert wird`:
`

Um die verfügbaren Schriftarten aufzulisten, folgendes eingeben:

`xlsfonts [-optionen] [-fn muster]`

`Dtlogin*greeting*fontList` | Schriftart für Begrüßungsnachricht
`Dtlogin*labelFont` | Schriftart für Tasten und Bezeichnungen
`Dtlogin*textFont` | Schriftart für Hilfe und Fehlermeldungen

Im folgenden Beispiel wird eine große Schriftart für die Begrüßungsnachricht angegeben (die Angabe darf eine Zeile nicht überschreiten):

    Dtlogin*greeting*fontList: -dt-interface system-medium-r-normal-xxl*-*-*-*-*-*-*-*-*:

#### Alternativtext für jede Sprache anzeigen lassen

Damit im Menü 'Sprache' des Anmeldefensters statt der standardmäßigen länderspezifischen Angabe ein Alternativtext angezeigt wird, muß die Ressource `Dtlogin*sprache*languageName` in der Datei `Xresources` geändert werden:

    Dtlogin*En_US*languageName: American

Statt der länderspezifischen Angabe `En_US` wird nun der Text `American` angezeigt.

#### Verhalten des
Anmeldefensters ändern

Um das Verhalten des Anmeldefensters zu ändern, können Ressourcen in der Datei `Xconfig` geändert werden.

Um eine Änderung in der Datei `Xconfig` vorzunehmen, wird `Xconfig` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Nach der Änderung von `/etc/dt/config/Xconfig` wird der Anmelde-Server angewiesen, die Datei `Xconfig` erneut zu lesen, indem folgendes eingegeben wird:

    /usr/dt/bin/dtconfig -reset

Damit wird der Befehl `kill -HUP (` Prozeß-ID des Anmelde-Servers) gegeben.

Zu den Ressourcen, die in der Datei `Xconfig`
spezifiziert sind, gehören:

`Dtlogin*authorize` | Spezifikation der Datei `Xaccess`
`Dtlogin*environment` | X-Server-Umgebung
`Dtlogin*language` | Standardsprache
`Dtlogin*languageList` | Liste der Sprachen für das Menü 'Sprachen' im Anmeldefenster
`Dtlogin*resources` | Spezifikation der Datei `Xresources`
`Dtlogin*setup` | Spezifikation der Datei `Xsetup`
`Dtlogin*startup` | Spezifikation der Datei `Xstartup`
`Dtlogin*session` | Spezifikation der Datei `Xsession`
`Dtlogin*failsafeClient` | Spezifikation der Prozedur `Xfailsafe`
`Dtlogin*reset` | Spezifikation der Prozedur `Xreset`
`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` | TZ für alle Prozeduren

### Verhalten des Anmeldefensters an einzelnen Bildschirmen ändern

In den obigen Beispielen wurde durch die Änderung einer Ressource in der Datei `Xconfig` das Verhalten des Anmeldefensters an allen Bildschirmen geändert. Ressourcen, die mit einem * (Stern) gekennzeichnet sind, können auch für einzelne Bildschirme geändert werden. Damit kann der Benutzer das Verhalten einzelner Bildschirme seinen Wünschen anpassen. Um eine Ressource für einen bestimmten Bildschirm zu setzen, wird die Ressource folgendermaßen angegeben: `Dtlogin*anzeigeName*ressource`. Soll beispielsweise die benutzerabhängige Zugriffssteuerung für Bildschirm `expo:0` abgeschaltet werden, aber an anderen Bildschirmen erhalten bleiben, wird folgendes eingegeben:

    Dtlogin*expo_0*authorize: False

Sämtliche Sonderzeichen im Namen des Bildschirms, wie z.B.: (Doppelpunkt) oder . (Punkt), werden durch _ (Unterstreichungszeichen) ersetzt.

### Zugriffsrechte auf den X-Server ändern

Standardmäßig gestattet der Anmelde-Server die Zugriffssteuerung auf den X-Server jeweils einzelnen Benutzern auf der Grundlage von Berechtigungsdaten, die in der Datei Standardverzeichnis`/.Xauthority` gespeichert und geschützt sind. Nur Benutzern, die diese Datei lesen können, ist es gestattet, eine Verbindung zum X-Server herzustellen. Dies ist die bevorzugte Methode der Zugriffssteuerung auf den X-Server.

Eine Alternative zur benutzerabhängigen Zugriffssteuerung bietet die Host-gestützte Zugriffssteuerung. Bei dieser Methode erhält, wenn ein Host Zugriff auf einen X-Server hat, jeder Benutzer an diesem Host Zugriff auf den X-Server. Mögliche Gründe für die Verwendung der Host-gestützten Zugriffssteuerung sind:

- Ältere R2 und R3 X-Clients können nicht über die benutzerabhängige Zugriffssteuerung eine Verbindung zu einem X-Server herstellen.

- In nicht gesicherten Netzen könnte ein nicht berechtigter Benutzer die Berechtigungsdaten, die zwischen dem X-Client und dem X-Server im Netz weitergereicht werden, abfangen.

Die Ressource `Xconfig` `Dtlogin*authorize`
weist den Anmelde-Server an, die benutzerabhängige Zugriffssteuerung zu verwenden. Soll die host-gestützte Zugriffssteuerung verwendet werden, muß der Wert der Ressource authorize auf `False` festgelegt werden. Beispiel:

    Dtlogin*authorize: False

#### X-Server-Umgebung
ändern

Soll der X-Server mit einer oder mehreren Umgebungsvariablen und -werten ausgestattet werden, wenn er über den Anmelde-Server gestartet wird, können diese mit der Ressource `Dtlogin*environment` in `Xconfig` angegeben werden. Beispiel:

    Dtlogin*environment: VAR1=foo VAR2=bar

Hier werden die Variablen VAR1 und VAR2 dem lokalen X-Server-Prozeß zur Verfügung gestellt. Diese Variablen werden auch in die Prozeduren `Xsession` und `Xfailsafe` exportiert.

#### Standardsprache ändern

Wenn sich der Benutzer über das Anmeldefenster am Desktop anmeldet, wird die Benutzer-Session unter der länderspezifischen Angabe ausgeführt, die der Benutzer im Untermenü 'Sprachen' des Menüs 'Optionen' ausgewählt hat. Wählt der Benutzer keine Sprache aus, verwendet der Anmelde-Server die Standardsprache. Der Benutzer kann festlegen, welche Sprache als Standardsprache verwendet werden soll, indem er die Ressource `Dtlogin*language` in `Xconfig` setzt. `
`Beispiel:

    Dtlogin*language: Ja_JP

Welche Sprachen auf einem System installiert sind, kann der zugehörigen Dokumentation entnommen werden.

#### Inhalt des Menüs 'Sprachen' des Anmeldefensters ändern

Standardmäßig erstellt der Anmelde-Server im Anmeldefenster das Menü 'Sprachen' mit einer Liste aller länderspezifischen Angaben, die auf dem System installiert sind. Wählt der Benutzer in dieser Liste eine länderspezifische Angabe aus, zeigt der Anmelde-Server das Anmeldefenster in der Sprache der ausgewählten länderspezifischen Angabe erneut an. Meldet sich der Benutzer anschließend im Anmeldefenster an, startet der Anmelde-Server eine Desktop-Session in der Sprache der ausgewählten länderspezifischen Angabe für den Benutzer.

Der Benutzer kann eine eigene Liste mit Sprachen erstellen, indem er die Ressource `Dtlogin*languageList` in `Xconfig` ändert:

    Dtlogin*languageList: En_US De_DE

Der Anmelde-Server zeigt nun nur `En_US` und `De_DE` im Menü 'Sprachen' des Anmeldefensters an.

### Befehle vor der Anzeige des Anmeldefensters eingeben

Nachdem der X-Server gestartet wurde, aber bevor das Anmeldefenster angezeigt wird, führt der Anmelde-Server die Prozedur `Xsetup` aus. `Xsetup`
wird mit Root-Berechtigung ausgeführt und setzt Befehle ab, die ausgeführt werden müssen, bevor das Anmeldefenster angezeigt wird.

Um eine Änderung in der Datei `Xsetup` vorzunehmen, wird `Xsetup` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Beim nächsten Aufruf des Anmeldefensters wird die geänderte Datei `Xsetup` ausgeführt.

#### Befehle eingeben, bevor die Benutzer-Session gestartet wird

Nachdem der Benutzer den Benutzernamen und das Kennwort eingegeben hat und diese identifiziert worden sind, aber bevor die Benutzer-Session gestartet worden ist, führt der Anmelde-Server die Prozedur `Xstartup` aus. `Xstartup
` wird mit Root-Berechtigung ausgeführt und setzt Befehle ab, die als Erstbenutzer ausgeführt werden müssen, bevor die Benutzer-Session gestartet wird.

Um eine Änderung in der Datei `Xstartup` vorzunehmen, wird `Xstartup` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Bei der nächsten Anmeldung des Benutzers wird die geänderte Datei `Xstartup` `Xstartup` ausgeführt.

#### Desktop-Session starten

Standardmäßig startet der Anmelde-Server die Benutzer-Session, indem er die Prozedur `Xsession`
ausführt. `Xsession`wird mit der Berechtigung des Benutzers ausgeführt und setzt Befehle ab, die für den Start des Desktops benötigt werden.

Die Prozedur `Xsession` darf nicht direkt aktualisiert werden.

Informationen über die Anpassung des Starts einer Desktop-Session für den Benutzer können SAG.SesMg.mkr.1 entnommen werden.

### Einfache Motif-Session starten

Wählt der Benutzer im Untermenü 'Sessions' des Menüs 'Optionen' des Anmeldefensters 'einfache Motif-Session'
aus, führt der Anmelde-Server die Prozedur `Xfailsafe` aus.
`Xfailsafe` wird mit der Berechtigung des Benutzers ausgeführt und setzt Befehle ab, die eine Minimalumgebung mit Fenstertechnik, normalerweise ein Datenstationsfenster und eine wahlfreie Fenstersteuerung, startet.

Um eine Änderung in der Datei `Xfailsafe` vorzunehmen, wird `Xfailsafe` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Bei der nächsten Anmeldung des Benutzers wird die geänderte Datei `Xfailsafe` `Xfailsafe` ausgeführt.

### Nach dem Ende der Benutzer-Session

Nachdem der Benutzer die Desktop- oder einfache Motif-Session verlassen hat, führt der Anmelde-Server die Prozedur `Xreset` aus. `Xreset`
wird mit Root-Berechtigung ausgeführt und setzt Befehle ab, die als Erstbenutzer ausgeführt werden müssen, nachdem die Benutzer-Session beendet wurde.

Um eine Änderung in der Datei `Xreset` vorzunehmen, wird `Xreset` aus `/usr/dt/config` in `/etc/dt/config` kopiert. Bei der nächsten Anmeldung des Benutzers wird die geänderte Datei `Xreset` ausgeführt.

### Umgebung des Anmelde-Servers

Der Anmelde-Server stellt eine Umgebung zur Verfügung, die in die Prozeduren `Xsetup`, `Xstartup`, `Xsession`, `Xfailsafe` und `Xreset` exportiert wird. Diese Umgebung wird in SAG.LogMg.mkr.11 beschrieben. Weitere Variablen können ebenfalls durch den Anmelde-Server exportiert werden.

### Umgebungen des Anmelde-Servers

Umgebungsvariable | `Xsetup` | `Xstartup` | `Xsession` | ``Xreset`` | Beschreibung
`LANG` | X | X | X | X | Standard- oder ausgewählte Sprache
`XAUTHORITY` | X | X | X | X | X-Berechtigungsdatei ändern (Option).
`PATH` | X | X | X | X | Wert der Ressource `Dtlogin*userPath` (`Xsession`, `Xfailsafe`) oder der Ressource `Dtlogin*systemPath` ( `Xsetup`, `Xstartup`, `Xreset`)
`DISPLAY` | X | X | X | X | Verbindungsnummer des X-Servers
`SHELL` | X | X | X | X | In `/etc/passwd` (`Xsession`, `Xfailsafe`) angegebene Shell oder Ressource `Dtlogin*systemShell` (`Xsetup`, `Xstartup`, `Xreset`)
`TZ` | X | X | X | X | Wert der Ressource `Dtlogin.timeZone` oder vom System festgelegte Zeitzone
`USER` |  | X | X | X | Benutzername
`HOME` |  | X | X | X | In `/etc/passwd` angegebenes Benutzerverzeichnis
`LOGNAME` |  | X | X | X | Benutzername

### Pfad für Benutzer oder System ändern

Der Anmelde-Server legt die Umgebungsvariable `PATH` fest,
wenn die Prozeduren `
Xsession` und `
Xfailsafe` ausgeführt werden. Der Benutzer kann einen Alternativpfad zu diesen Prozeduren festlegen:

#### Benutzerpfad ändern

- Die Ressource `Dtlogin*userPath` in `Xconfig`
  festlegen. Beispiel:

    Dtlogin*userPath:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11

#### Systempfad ändern

- Die Ressource `Dtlogin*systemPath` in `Xconfig`
  festlegen. Beispiel:

    Dtlogin*systemPath: /usr/bin/X11:/etc:/bin:/usr/bin:/usr/ucb

### System-Shell ändern

Der Anmelde-Server legt die Umgebungsvariable `SHELL` fest, wenn die Prozeduren `Xsetup`, `Xstartup` und `X
failsafe` ausgeführt werden. Standardmäßig wird `/bin/sh` festgelegt. Soll alternativ zu diesen Prozeduren eine andere Shell zur Verfügung gestellt werden, die Ressource `Dtlogin*systemShell` in `Xconfig` festlegen. Beispiel:

    Dtlogin*systemShell: /bin/ksh

### Zeitzone ändern

Der Anmelde-Server legt die Umgebungsvariable TZ fest, wenn die Prozeduren `Xsetup`, `Xstartup`, `Xsession`, `Xfailsafe` und `Xreset` ausgeführt werden. Der Standardwert wird dem System entnommen, so daß eine Änderung normalerweise nicht
notwendig ist. Soll eine andere Zeitzone zur Verfügung gestellt werden, die Ressource `Dtlogin*timeZone` in `Xconfig`
festlegen. Beispiel:

    Dtlogin.timeZone: CST6CDT

## Anmeldemanager verwalten

Wird der Anmelde-Server gestartet, wird ein Prozeß `dtlogin` gestartet. Der Prozeß `dtlogin` liest die Datei `Xconfig`, um die Anfangskonfiguration des Anmelde-Servers und weitere Konfigurationsdateien des Anmelde-Servers festzustellen. Dann liest der Anmelde-Server die Datei `Xservers`, um festzustellen, ob Bildschirme vorhanden sind, die explizit verwaltet werden müssen, und die Datei `Xaccess`, um den Zugriff auf den Anmelde-Server zu steuern.

Stellt der Anmelde-Server in der Datei `Xservers`
fest, daß ein lokaler Bildschirm zu verwalten ist, startet er, gemäß den Instruktionen in der Datei `Xservers`, einen X-Server und zeigt an diesem Bildschirm ein Anmeldefenster an.

Stellt der Anmelde-Server in der Datei `Xservers` fest, daß ein Bildschirm im Netz zu verwalten ist, wird er davon ausgehen, daß ein X-Server mit dem angegebenen Bildschirmnamen bereits läuft, und ein Anmeldefenster an diesem Bildschirm anzeigen.

Anschließend wird der Anmelde-Server auf XDMCP-Anforderungen aus dem Netz warten.

Für jeden Bildschirm, den er verwaltet, erstellt der Anmelde-Server zunächst einen neuen Prozeß `dtlogin` für diesen Bildschirm. Dies bedeutet, daß, wenn der Anmelde-Server n Bildschirme verwaltet, n+1 Prozesse `dtlogin` vorhanden sind. Der Anmelde-Server führt die Prozedur `Xsetup` aus, lädt die Datei `Xresources`, und führt dann `dtgreet` aus, um das Anmeldefenster anzuzeigen. Nachdem der Benutzer einen Benutzernamen und ein Kennwort eingegeben hat und identifiziert wurde, führt der Anmelde-Server die Prozedur `Xstartup` aus, sowie anschließend die Prozedur `Xsession` bzw. `Xfailsafe
`. Hat der Benutzer die Session beendet, führt der Anmelde-Server die Prozedur `Xreset` aus.

Erhält der Anmelde-Server eine indirekte
XDMCP-Anforderung, wird `dtchooser` ausgeführt und eine Liste mit Anmelde-Server-Hosts auf dem Bildschirm angezeigt. Wählt der Benutzer einen Host aus dieser Liste, verwaltet der Anmelde-Server an diesem Host den Bildschirm.

Die Konfigurationsdateien `Xaccess`, `Xconfig`, `Xfailsafe`, `Xreset`, sprache`/Xresources`, `Xservers`, `Xsetup` und `Xstartup` sucht der Anmelde-Server standardmäßig zuerst in `/etc/dt/config` und dann in `/usr/dt/config`. Er verwendet die Datei, die er zuerst findet.

## Dateien des Anmeldemanagers

Die Dateien des Anmeldemanagers
befinden sich standardmäßig in:

`/usr/dt/bin/dtlogin` | Anmelde-Server und Anzeigemanager
`/usr/dt/bin/dtgreet` | Zeigt ein Anmeldefenster an einem Bildschirm an.
`/usr/dt/bin/dtchooser` | Zeigt ein Auswahlfenster an einem Bildschirm an.
`/usr/dt/bin/Xsession` | Startet eine Desktop-Session.
`/usr/dt/config/Xfailsafe` | Startet eine einfache Motif-Session.
`/usr/dt/config/Xconfig` | Konfigurationsdatei des Anmelde-Servers
`/usr/dt/config/Xservers` | Anzeigebeschreibungsdatei des Anmelde-Servers
`/usr/dt/config/Xaccess` | Zugriffsbeschreibungsdatei des Anmelde-Servers
`/usr/dt/config/`sprache`/Xresources` | Anzeigeentwurfsressourcen
`/usr/dt/config/Xsetup` | Anzeigekonfigurationsdatei
`/usr/dt/config/Xstartup` | Startdatei vor der Session
`/usr/dt/config/Xreset` | Datei für Rücksetzung nach der Session
`/var/dt/Xpid` | Prozeß-ID des Anmelde-Servers
`/var/dt/Xerrors` | Fehlerprotokolldatei des Anmelde-Servers