CDE Handbuch für fortgeschrittene Benutzer und Systemverwalter

Zu Beginn einer Sitzung

Nach dem Aufruf des Session Managers wird eine Sitzung in folgenden Schritten gestartet:

  1. Das Skript HomeVerzeichnis/.dtprofile wird ausgeführt.

  2. Die Xsession.d-Skripts werden ausgeführt.

  3. Eine Begrüßungsmeldung wird angezeigt.

  4. Die Desktop-Suchpfade werden eingerichtet.

  5. Verfügbare Anwendungen werden erfaßt.

  6. Optional werden die Skripts HomeVerzeichnis/.profile oder HomeVerzeichnis/.login ausgeführt.

  7. Der Nachrichtendämon ToolTalk\256 wird gestartet.

  8. Die Sitzungsressourcen werden geladen.

  9. Der Farb-Server wird gestartet.

  10. Der Workspace Manager wird gestartet.

  11. Die Sitzungsanwendungen werden gestartet.

    Die folgenden Abschnitte beschreiben diese einzelnen Schritte.

Das Skript .dtprofile ausführen

Beim Start der Anwendung führt das Skript Xsession das Skript HomeVerzeichnis/.dtprofile des Benutzers aus. Dabei handelt es sich um ein /bin/sh- oder /bin/ksh-Skript, das Benutzern die Einstellung von Umgebungsvariablen für ihre Sitzungen gestattet. Details hierzu finden Sie unter "Zusätzliche Anpassungen beim Start einer Sitzung".

Sollte das Skript HomeVerzeichnis/.dtprofile nicht vorhanden sein, beispielsweise weil sich der Benutzer zum ersten Mal beim Desktop anmeldet, kopiert Xsession die Standard-Desktopdatei sys.dtprofile in HomeVerzeichnis/.dtprofile.

Die Standards für den Desktop sind definiert in /usr/dt/config/sys.dtprofile. Wenn das Skript sys.dtprofile angepaßt werden soll, kopieren Sie sys.dtprofile aus /usr/dt/config nach /etc/dt/config, und bearbeiten Sie die neue Datei.

Das Skript Xsession.d ausführen

Nach Ausführung des Skripts HomeVerzeichnis/.dtprofile führt das Skript Xsession die Skripts in Xsession.d aus. Diese übernehmen die Einrichtung zusätzlicher Umgebungsvariablen und starten optionale Dämonen für die Benutzersitzung. Standardmäßig enthält Xsession.d die folgenden Skripts:

0010.dtpaths--Dokumentiert die einstellbaren Desktop-Suchpfade.

0020.dtims--Startet einen optionalen Eingabemethoden-Server.

0030.dttmpdir--Legt ein benutzerspezifisches temporäres Verzeichnis für jede Sitzung an.

0040.xmbind--Richtet $XMBINDDIR entsprechend dem Desktop-Standard ein.

In Xsession.d befinden sich eventuell weitere, herstellerspezifische Skripts.

Xsession führt zuerst alle Dateien im Verzeichnis /etc/dt/config/Xsession.d und dann die Dateien in /usr/dt/config/Xsession.d aus.

Die Standardskripts der Gruppe Xsession.d für den Desktop befinden sich im Verzeichnis /usr/dt/config/Xsession.d. Um eines der Xsession.d-Skripts anzupassen, kopieren Sie es von /usr/dt/config/Xsession.d nach /etc/dt/config/Xsession.d und bearbeiten die neue Datei. Dazu müssen Sie jedoch über eine Berechtigung zum Ausführen verfügen.

Wenn Sie möchten, daß Xsession eines Ihrer eigenen Skripts ebenfalls automatisch ausführt, müssen Sie es nach /etc/dt/config/Xsession.d kopieren.


Hinweis -

Immer wenn Sie eines der Skripts in Xsession.d verändern oder ein neues erstellen, sollten Sie auf eine geringe Ausführungsdauer der Vordergrundbefehle achten, um die für den Sitzungsstart benötigte Zeit kurz zu halten. Wenn ein Vordergrundbefehl nicht existiert, wird der Sitzungsstart angehalten. Alle Befehle in einem Xsession.d--Skript, die für die gesamte Dauer der Sitzung aktiv bleiben sollen, sollten im Hintergrund ablaufen.


Begrüßungsmeldung anzeigen

Nach Ausführung der Skripts HomeVerzeichnis/.dtprofile und Xsession.d zeigt Xsession eine Begrüßungsmeldung über den gesamten Bildschirm an. Die Meldung kann in ihrem Text verändert oder ganz deaktiviert werden. Der Client dthello wird zum Anzeigen der Meldung verwendet.

Um den Meldungstext zu ändern, ändern Sie die dthello--Optionen über die Variable dtstart_hello[0].

Erzeugen Sie zum Ändern von dtstart_hello[0] ein Skript /etc/dt/config/Xsession.d, über das der neue Wert gesetzt wird. Wenn die Tagesmeldung für alle Benutzer angezeigt werden soll, erzeugen Sie ein ausführbares sh- oder ksh-Skript, beispielsweise /etc/dt/config/Xsession.d/myvars, und setzen Sie dtstart_hello[0] folgendermaßen:

dtstart_hello[0]="/usr/dt/bin/dthello -file /etc/motd &"

Auf ähnliche Weise können Benutzer die Begrüßungsmeldung für ihre Sitzungen ändern. Dazu muß dtstart_hello[0] in HomeVerzeichnis/.dtprofile gesetzt werden.

Zum Deaktivieren der Begrüßungsmeldung setzen Sie dtstart_hello[0]=" ".

Weitere Informationen zu dthello finden Sie in der Hilfeseite dthello.

Desktop-Suchpfade einrichten

Die Desktop-Suchpfade werden bei der Anmeldung von dtsearchpath erzeugt. Von dtsearchpath werden zwei Kategorien von Umgebungsvariablen verwendet:

Eingabevariablen -- Systemweite und persönliche Umgebungsvariablen, deren Werte vom Systemverwalter oder vom Endanwender gesetzt werden.

Ausgabevariablen -- Variablen, die von dtsearchpath erzeugt und mit Werten versehen werden. Der Wert jeder Variablen entspricht dem Suchpfad für die Desktop-Sitzung.

Um die Befehlszeilenoptionen für dtsearchpath zu ändern, ändern Sie die Variable dtstart_searchpath. Um die Variable dtstart_searchpath für alle Benutzer zu ändern, erstellen Sie das ausführbare Skript sh oder ksh (beispielsweise /etc/dt/config/Xsession.d/myvars), und setzen Sie dtstart_searchpath folgendermaßen:

dtstart_searchpath="/usr/dt/bin/dtsearchpath"

Auf ähnliche Weise können Benutzer die dtsearchpath--Optionen nur für ihre eigenen Sitzungen ändern. Dazu muß dtstart_searchpath in HomeVerzeichnis/.dtprofile gesetzt werden.

Weitere Informationen zu dtsearchpath finden Sie in Kapitel 9. Details zu den Optionen von dtsearchpath finden Sie auf der Hilfeseite dtsearchpath.

Verfügbare Anwendungen erfassen

Nach dem Einrichten der Suchpfade für den Desktop werden die verfügbaren Anwendungen mit Hilfe von dtappgather zusammengestellt. Um die Befehlszeilenoptionen für dtappgather zu ändern, ändern Sie die Variable dtstart_appgather. Um die Variable dtstart_appgather für alle Benutzer zu ändern, erstellen Sie ein ausführbares sh- oder ksh-Skript (beispielsweise /etc/dt/config/Xsession.d/myvars), und setzen Sie dtstart_appgather folgendermaßen:

dtstart_appgather="/usr/dt/bin/dtappgather &"

Auf ähnliche Weise können Benutzer die Optionen von dtappgather nur für ihre eigenen Sitzungen ändern. Dazu wird dtstart_appgather in HomeVerzeichnis/.dtprofile gesetzt.

Näheres zu den Optionen von dtappgather finden Sie in der Hilfeseite dtappgather(4).

Optionale Ausführung der Skripts .profile und .login

Xsession ist in der Lage, die konventionellen Skripts HomeVerzeichnis/.profile oder HomeVerzeichnis/.login eines Benutzers auszuführen. Per Voreinstellung ist diese Funktion jedoch deaktiviert. Soll Xsession die Skripts .profile oder .login ausführen, setzen Sie die Variable DTSOURCEPROFILE auf true.

Um DTSOURCEPROFILE für alle Benutzer zu ändern, erstellen Sie ein Skript /etc/dt/config/Xsession.d, in dem der neue Wert gesetzt wird. Um DTSOURCEPROFILE für alle Benutzer auf true zu setzen, erstellen Sie ein ausführbares sh- oder ksh-Skript, beispielsweise /etc/dt/config/Xsession.d/myvars, und setzen Sie DTSOURCEPROFILE folgendermaßen:

DTSOURCEPROFILE=true

Auf ähnliche Weise können Benutzer den Wert von DTSOURCEPROFILE für ihre eigene Sitzung ändern. Dazu wird DTSOURCEPROFILE auf true in HomeVerzeichnis/.dtprofile gesetzt.

Den ToolTalk--Nachrichtendämon starten

Der ToolTalk--Nachrichtendämon, ttsession, ermöglicht die Kommunikation unabhängiger Anwendungen untereinander, ohne daß diese in direkter Verbindung stehen. Hierzu erzeugen und senden die Anwendungen ToolTalk--Nachrichten. ttsession übernimmt den Datenaustausch im Netz und leitet die Nachrichten weiter.

Um die Befehlzeilenoptionen für ttsession zu ändern, bearbeiten Sie die Variable dtstart_ttsession. Um die Variable dtstart_ttsession für alle Benutzer zu ändern, erstellen Sie das ausführbare Skript sh oder ksh (beispielsweise /etc/dt/config/Xsession.d/myvars), und setzen Sie dtstart_ttsession folgendermaßen:

dtstart_ttsession="/usr/dt/bin/ttsession -s"

Auf ähnliche Weise können Benutzer die Optionen von ttsession für ihre eigene Sitzung ändern. Dazu muß dtstart_ttsession in HomeVerzeichnis/.dtprofile gesetzt werden.

Näheres zu den Optionen von ttsession finden Sie in der Hilfeseite ttsession. Details zum Modul ttsession finden Sie unter Common Desktop Environment: ToolTalk Messaging Overview.

Client des Session Managers starten

Zu diesem Zeitpunkt startet Xsession das Modul /usr/dt/bin/dtsession, das den Startvorgang der Sitzung fortführt.

Sitzungsressourcen laden

Der Session Manager stellt die Desktop-Ressourcen mit Hilfe der X--Server-Eigenschaft RESOURCE_MANAGER für alle Anwendungen zur Verfügung. Das Laden von RESOURCE_MANAGER umfaßt folgende Schritte:

Die Desktop-Standardressourcen sind in /usr/dt/config/sprache/sys.resources definiert. Über die Eigenschaft RESOURCE_MANAGER werden diese Ressourcen allen Benutzersitzungen zur Verfügung gestellt. Das Bearbeiten dieser Datei ist zwecklos, da sie bei nachfolgenden Desktop-Installationen überschrieben wird.

Die Anzahl der Standard-Systemressourcen läßt sich erhöhen, indem die Datei /etc/dt/config/sprache /sys.resources angelegt wird. In dieser Datei können für alle Desktop-Benutzer Standardressourcen umdefiniert oder weitere Ressourcen hinzugefügt werden. In dieser Datei sollten nur neue oder aktualisierte Ressourcenspezifikationen gespeichert werden, da die Datei beim Sitzungsstart mit den Standard-Desktop-Ressourcen kombiniert wird. Über die Eigenschaft RESOURCE_MANAGER werden diese Ressourcen allen Benutzersitzungen zur Verfügung gestellt. Die Definitionen in dieser Datei haben Vorrang vor denen der Standard-Ressourcendatei für den Desktop.

Benutzer können die Anzahl der Standardressourcen für den Desktop und der systemweit definierten Ressourcen über die Datei HomeVerzeichnis/.Xdefaults erhöhen. Über die Eigenschaft RESOURCE_MANAGER werden diese Ressourcen der jeweiligen Benutzersitzung zur Verfügung gestellt. Die Definitionen in dieser Datei haben Vorrang vor denen der Standard-Ressourcendatei des Desktops oder der Ressourcendatei des Systemverwalters.


Hinweis -

Das Dienstprogramm X Toolkit Intrinsics lädt die Ressourcen für eine Anwendung entweder aus RESOURCE_MANAGER oder aus HomeVerzeichnis/.Xdefaults, jedoch nicht aus beiden Quellen. Das bedeutet normalerweise, daß die Datei HomeVerzeichnis/.Xdefaults des Benutzers ignoriert wird. Wie bereits erwähnt, kombiniert der Session Manager die Datei HomeVerzeichnis/.Xdefaults jedoch beim Start der Sitzung mit RESOURCE_MANAGER. Die an HomeVerzeichnis/.Xdefaults vorgenommenen Änderungen wirken sich erst dann auf neue Anwendungen aus, wenn der Benutzer die Aktion 'Ressourcen neu laden' ausführt. Dadurch wird der Session Manager veranlaßt, RESOURCE_MANAGER mit den Standardressourcen, den systemweit definierten Ressourcen und den vom Benutzer festgelegten Ressourcen zu laden. Aufgrund dieses Vorgangs werden Änderungen an systemweiten oder persönlichen Ressourcendateien für Anwendungen verfügbar.


Weitere Informationen finden Sie an folgenden Stellen:

Farb-Server starten

Der Session Manager fungiert als Farb-Server für den Desktop. Zur Konfiguration dienen die folgenden dtsession--Ressourcen.

foregroundColor -- Steuert, ob einem Pixel die Vordergrundfarbe zugeordnet wird.

dynamicColor -- Gibt an, ob schreibgeschützte Farben zugeordnet werden.

shadowPixmaps -- Gibt an, ob Farben für den oberen oder unteren Schatten zugeordnet sind.

colorUse -- Begrenzt die Farbzuordnung.

writeXrdbColors -- Gibt an, ob die *background und *foreground --Ressourcen in die Ressourcendatenbank eingetragen werden.

Wenn die Farb-Server-Ressourcen für alle Benutzer geändert werden sollen, legen Sie die Datei /etc/dt/config/sprache/sys.resources an und geben die Ressourcen ein.

Auf ähnliche Weise können Benutzer Farb-Server-Ressourcen für eigene Sitzungen in der Datei HomeVerzeichnis/.Xdefaults festlegen.

Weitere Informationen zur Einstellung der Farb-Server-Ressourcen finden Sie unter "Farben verwalten".

Workspace Manager starten

Der Session Manager ist verantwortlich für den Start des Workspace Managers. Per Voreinstellung wird /usr/dt/bin/dtwm aufgerufen. Mit der Ressource wmStartupCommand kann ein alternativer Fenstermanager festgelegt werden.

Wenn Sie einen alternativen Fenstermanager für alle Benutzer festlegen möchten, erzeugen Sie die Datei /etc/dt/config/sprache/sys.resources und geben in dieser Datei über die Ressource Dtsession*wmStartupCommand den vollständigen Pfadnamen und die Optionen für den Manager an.

Auf ähnliche Weise können Benutzer einen alternativen Fenstermanager für ihre eigenen Sitzungen auswählen. Dazu muß in HomeVerzeichnis/.Xdefaults die Ressource Dtsession*wmStartupCommand entsprechend gestezt werden.

Weitere Informationen hierzu finden Sie in Kapitel 16.

Anwendungen einer Sitzung starten

Zu Beginn einer Sitzung startet der Session Manager erneut alle Anwendungen, die als Teil der Sitzung gespeichert wurden. Die Anwendungen, die standardmäßig bei einer Startsitzung geladen werden, sind definiert in /usr/dt/config/sprache/sys.session. Diese Datei darf nicht bearbeitet werden, da sie ansonsten bei nachfolgenden Desktop-Installationen überschrieben wird.

Weitere Informationen finden Sie auf der Hilfeseite dtsessionfile(4).

Wenn ein Systemverwalter andere Anwendungen für eine Startsitzung verwenden möchte, kann er die Datei /usr/dt/config/sprache/sys.session in die Datei /etc/dt/config/sprache/sys.session kopieren und letztere Datei bearbeiten. Im Gegensatz zu den Ressourcendateien ersetzt diese Datei die Desktop-Standarddatei vollständig, so daß an einer Kopie der System-Standarddatei die nötigen Änderungen vorgenommen werden können.