Solaris Common Desktop Environment: Benutzerhandbuch für Fortgeschrittene 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 Skripts Xsession.d 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. Sitzungsressourcen werden geladen.

  9. Der Farbserver 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 auf 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 Desktopstandard ein.

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

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

Die Standardskripts der Gruppe Xsession.d für den Desktop befinden sich im Verzeichnis /usr/dt/config/Xsession.d . Wenn eines dieser Skripts angepaßt werden soll, kopieren Sie es von /usr/dt/config/Xsession.d nach /etc/dt/config/Xsession.d und bearbeiten die neue Datei. Dazu müssen Sie allerdings das Ausführungsrecht besitzen.

Wenn Sie möchten, daß Xsession eines Ihrer eigenen Skripts ebenfalls automatisch ausführen soll, 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. Die Anzeige steuert der Client dthello.

Wenn Sie den Meldungstext wechseln möchten, ändern Sie die dthello--Optionen über die Variable dtstart_hello[0] .

Zum Ändern von dtstart_hello[0] erstellen Sie ein Skript /etc/dt/config/Xsession.d, das den neuen Wert setzt. Wenn die Meldung des Tages 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 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 Handbuchseite 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 verwaltet werden. Der Wert jeder Variablen entspricht dem Suchpfad für die Desktopsitzung.

Die Befehlszeilenoptionen für dtsearchpath werden über die Variable dtstart_searchpath geändert. Wenn dies für alle Benutzer dtstart_searchpath erfolgen soll, erstellen Sie ein ausführbares sh- oder ksh- Skript, beispielsweise /etc/dt/config/Xsession.d/myvars , und setzen 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 enthält die Handbuchseite dtsearchpath.

Verfügbare Anwendungen erfassen

Der nächste Schritt nach Einrichtung der Desktop-Suchpfade besteht in der Erfassung der verfügbaren Anwendungen mit Hilfe von dtappgather. Die Befehlszeilenoptionen von dtappgather werden über die Variable dtstart_appgather geändert. Wenn dies für alle Benutzer erfolgen soll, erzeugen Sie ein ausführbares sh- oder ksh-Skript, beispielsweise /etc/dt/config/Xsession.d/myvars, und setzen 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 Handbuchseite 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 dieses Merkmal jedoch deaktiviert. Soll Xsession die Skripts .profile oder .login ausführen, setzen Sie die Variable DTSOURCEPROFILE auf true.

Wenn die Einstellung von DTSOURCEPROFILE für alle Benutzer geändert werden soll, erzeugen Sie ein Skript /etc/dt/config/Xsession.d, das den neuen Wert zuweist. Damit DTSOURCEPROFILE für alle Benutzer auf true gesetzt wird, erzeugen Sie ein ausführbares sh- oder ksh- Skript, beispielsweise /etc/dt/config/Xsession.d/myvars, und setzen DTSOURCEPROFILE folgendermaßen:

DTSOURCEPROFILE=true

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

Den ToolTalk--Nachrichtendämon starten

Der ToolTalk--Nachrichtendämon, ttsession, ermöglicht die Kommunikation von 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.

Die Befehlszeilenoptionen für ttsession werden über die Variable dtstart_ttsession geändert. Wenn dies für alle Benutzer geschehen soll, erstellen Sie ein ausführbares sh- oder ksh- Skript, beispielsweise /etc/dt/config/Xsession.d/myvars, und setzen 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 enthält die Handbuchseite 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 macht die Desktop-Ressourcen mit Hilfe der X--Servereigenschaft RESOURCE_MANAGER allen Anwendungen verfügbar. 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 verfügbar gemacht. Es hat keinen Sinn, die Datei zu verändern, weil sie bei nachfolgenden Desktop-Installationen überschrieben wird.

Die Anzahl der Standard-Systemressourcen läßt sich erhöhen, indem eine 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 plaziert werden, weil die Datei beim Start der Sitzung mit den Standard-Desktopressourcen kombiniert wird. Über die Eigenschaft RESOURCE_MANAGER werden sämtliche in dieser Datei angegebenen Ressourcen allen Benutzersitzungen verfügbar gemacht. 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 un der systemweit definierten Ressourcen über die Datei HomeVerzeichnis/.Xdefaults erhöhen. Über die Eigenschaft RESOURCE_MANAGER werden die hier definierten Ressourcen der Sitzung dieses Benutzers verfügbar gemacht. Die Definitionen in dieser Datei haben Vorrang vor denen der Standard-Ressourcendatei des Desktop 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, aber 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. Änderungen des Benutzers an HomeVerzeichnis/.Xdefaults 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 vom Benutzer festgelegten Ressourcen zu laden. Erst dadurch werden Änderungen an systemweiten oder persönlichen Ressourcendateien für Anwendungen verfügbar.


Weitere Informationen finden Sie an folgenden Stellen:

Farbserver starten

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

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

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

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 Farbserver-Ressourcen für alle Benutzer geändert werden sollen, legen Sie eine Datei /etc/dt/config/sprache/sys.resources an und tragen dort die Ressourcen ein.

Auf ähnliche Weise können Benutzer Farbserver-Ressourcen für ihre eigenen Sitzungen festlegen. Dies geschieht in der Datei HomeVerzeichnis/.Xdefaults.

Weitere Informationen zur Einstellung der Farbserver-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 ein alternativer Fenstermanager für alle Benutzer festgelegt werden soll, erzeugen Sie eine Datei /etc/dt/config/sprache/sys.resources und geben dort mit der Ressource Dtsession*wmStartupCommand den vollständigen Pfadnamen und die Optionen für diesen Fenstermanager 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 definiert werden.

Weitere Informationen hierzu finden Sie in Kapitel 16.

Anwendungen einer Sitzung starten

Zu Beginn einer Sitzung startet der Session Manager wieder 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 sollte nicht bearbeitet werden, weil sie bei nachfolgenden Desktop-Installationen überschrieben wird.

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

Wenn ein Systemverwalter andere Anwendungen für eine Startsitzung vorsehen möchte, kann er die Datei /usr/dt/config/sprache/sys.session auf 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.