Solaris 一般桌上管理系統環境:進階使用者和系統管理員指南

當階段作業啟動時

當階段作業管理者啟動時,要經過下列步驟以啟動使用者的階段作業:

  1. 搜尋 HomeDirectory/.dtprofile 指令集

  2. 搜尋 Xsession.d 指令集

  3. 顯示歡迎訊息

  4. 設定桌上管理系統搜尋路徑

  5. 收集可供使用的應用程式

  6. 選擇性地搜尋 HomeDirectory/.profileHomeDirectory/.login

  7. 啟動 ToolTalkTM 訊息常駐程式

  8. 載入階段作業來源

  9. 啟動色彩伺服器

  10. 啟動工作區管理者

  11. 啟動階段作業應用程式

    下列區段描述以上所列出的步驟。

搜尋 .dtprofile 指令集

在階段作業啟動時,Xsession 指令集會搜尋使用者的 HomeDirectory/.dtprofile 指令集。HomeDirectory/.dtprofile 指令集是讓使用者能夠設定其階段作業環境變數的 /bin/sh/bin/ksh 指令集。有關設定環境變數更多的資訊,請參閱 "其它的階段作業啟動自訂 "

如果 HomeDirectory/.dtprofile 指令集不存在,例如當使用者正第一次登入桌上管理系統時,Xsession 將會複製桌上管理系統內定 sys.dtprofile HomeDirectory/.dtprofile

桌上管理系統內定為 /usr/dt/config/sys.dtprofile。如果要自訂 sys.dtprofile 指令集,請從 /usr/dt/configsys.dtprofile 複製到 /etc/dt/config 並編輯新檔案。

找出 Xsession.d 指令集來源

在搜尋 HomeDirectory/.dtprofile 指令集之後,Xsession 指令集會搜尋 Xsession.d 指令集。這些指令集是用於設定其它的環境變數並啟動使用者的階段作業選擇性常駐程式。內定的 Xsession.d 指令集為:

0010.dtpaths-文件可自訂的桌上管理系統搜尋路徑

0020.dtims-啟動選擇性的輸入方法伺服器

0030.dttmpdir-建立每個使用者、每個階段作業的暫存目錄

0040.xmbind-設定 $XMBINDDIR 為桌上管理系統內定

Xsession.d 中可能有其它廠商特定的指令集。

Xsession 會先搜尋 /etc/dt/config/Xsession.d目錄中的所有檔案,接著才搜尋 /usr/dt/config/Xsession.d 目錄中的檔案。

桌上管理系統內定 Xsession.d 指令集是位於 /usr/dt/config/Xsession.d 目錄中。如果要自訂 Xsession.d 指令集,請從 /usr/dt/config/Xsession.d 將指令集複製到 /etc/dt/config/Xsession.d 並編輯新檔案。您必須有執行許可 權才能執行此工作。

同時,如果要使 Xsession 自動搜尋您自己的指令集,請將其複製到 /etc/dt/config/Xsession.d


註解 -

當您修改或建立 Xsession.d 指令集時,請確定您發出的任何前景指令持續時間是短的,因為指令所花費的時間將會直接影響階段作業啟動時間。如果前景指令未結束,階段作業啟動將會停頓。您想要繼續執行階段作業持續時間的 Xsession.d 指令集中執行的指令應在背景中執行。


顯示歡迎訊息

在搜尋 HomeDirectory/.dtprofileXsession.d 指令集之後,Xsession 顯示蓋住螢幕的歡迎訊息。您可以自訂顯示的歡迎訊息,或完全關閉此訊息。dthello 客戶機是用於顯示此訊息的。

如果要改變訊息文字,請藉由修改 dtstart_hello[0] 變數來變更dthello 選項。

如果要變更 dtstart_hello[0],請建立設定新值的 /etc/dt/config/Xsession.d 指令集。如果要為所有使用者顯示這一天的訊息,請建立可執行的 shksh 指令集,例如 /etc/dt/config/Xsession.d/myvars,並設定 dtstart_hello[0] 如下:

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

同樣地,使用者可以藉由設定 HomeDirectory/.dtprofile 中的dtstart_hello[0] 變更其階段作業的歡迎訊息。

如果要關閉歡迎訊息,請設定 dtstart_hello[0]=" "。

有關 dthello 更多的資訊,請參閱 dthello 線上援助頁。

設定桌上管理系統搜尋路徑

桌上管理系統搜尋路徑是在登入時由 dtsearchpath 所建立的。有兩大類由 dtsearchpath 所使用的環境變數:

輸入變數-數值是由系統管理或一般使用者所設定的整個系統的變數以及個人環境變數。

輸出變數-由 dtsearchpath 建立與指派值的變數。每個變數的 值都是桌上管理系統階段作業的搜尋路徑。

如果要改變 dtsearchpath 的指令行選項,請修改 dtstart_searchpath 變數。如果要變更所有使用者的 dtstart_searchpath 變數,請建立可執行的 shksh 指令集(例如 /etc/dt/config/Xsession.d/myvars),並設定 dtstart_searchpath 如下:

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

使用者同樣地可以藉由設定 HomeDirectory/.dtprofile 中的dtstart_searchpath 只變更其自己的階段作業之 dtsearchpath 選項。

有關 dtsearchpath 的更多資訊,請參閱 第 9章, 桌上管理系統搜尋路徑。有關 dtsearchpath 選項的更多資訊,請參閱 dtsearchpath 線上援助頁。

收集可供使用的應用程式

設定桌上管理系統搜尋路徑之後的下一步就是使用 dtappgather 收集可供使用的應用程式。如果要改變 dtappgather 的指令行選項,請修改 dtstart_appgather 變數。如果要變更所有使用者的 dtstart_appgather 變數,請建立可執行的 shksh 指令集(例如 /etc/dt/config/Xsession.d/myvars),並設定 dtstart_appgather 如下:

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

使用者同樣地可以藉由設定 HomeDirectory/.dtprofile 中的dtstart_appgather 只變更其自己的階段作業之 dtappgather 選項。

有關 dtappgather 選項的更多資訊,請參閱 dtappgather(4) 線上援助頁。

選擇性地搜尋 .profile 或 .login 指令集

Xsession 能夠搜尋使用者的傳統 HomeDirectory/.profileHomeDirectory/.login 指令集。依照內定值,此能力是取消的。如果要告訴 Xsession 去搜尋 .profile.login 指令集,請設定 DTSOURCEPROFILE正確的

如果要變更所有使用者的 DTSOURCEPROFILE,請建立設定新值的 /etc/dt/config/Xsession.d 指令集。如果要設定所有使用者的 DTSOURCEPROFILE正確的,請建立可執行的 shksh指令集,例如 /etc/dt/config/Xsession.d/myvars,並設定DTSOURCEPROFILE 如下:

DTSOURCEPROFILE=true

使用者同樣地可以藉由在 HomeDirectory/.dtprofile 中 將DTSOURCEPROFILE 設定為 正確的 來變更其自己的階段作業之DTSOURCEPROFILE

啟動 ToolTalk 訊息常駐程式

ToolTalk 訊息常駐程式 ttsession 使獨立的應用程式能夠彼此通信而不需對彼此有直接的認識。應用程式會建立並送出 ToolTalk 訊息以彼此通信。ttsession 在網路上通信以發送訊息。

如果要改變 ttsession 的指令行選項,請修改 dtstart_ttsession 變數。如果要變更所有使用者的 dtstart_ttsession 變數,請建立可執行的 shksh 指令集(例如 /etc/dt/config/Xsession.d/myvars),並設定 dtstart_ttsession 如下:

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

使用者同樣地可以藉由在 HomeDirectory/.dtprofile 中設定dtstart_ttsession 來變更其自己的階段作業之 ttsession 選項。

有關 ttsession 選項的更多資訊,請參閱 ttsession 線上援助頁。有關 ttsession 的更多資訊,請參閱 Common Desktop Environment: ToolTalk Messaging Overview

啟動階段作業管理者客戶機

此刻,Xsession會啟動/usr/dt/bin/dtsession,此啟動會使階段作業啟動處理繼續進行 。

載入階段作業來源

階段作業管理者使用 X 伺服器 RESOURCE_MANAGER 屬性以使桌上管理系統來源可供所有的應用程式使用。階段作業管理者載入 RESOURCE_MANAGER 由:

桌上管理系統內定值來源可以在 /usr/dt/config/language/sys.resources 中找到。這些來源將會經由 RESOURCE_MANAGER 屬性供每個使用者的階段作業使用。此檔案不應編輯,因為在後續的桌上管理系統安裝時會將它重寫。

您可以藉由建立 /etc/dt/config/language/sys.resources 增加系統內定值資源。在此檔案中,您可以為所有的桌上管理系統使用者置換內定值來源或指定其它的來源。既然此檔案是在階段作業啟動期間合併到桌上管理系統內定值來源內的,此檔案中應只放入新的或更新的來源規格。此檔案中所指定的來源將會經由 RESOURCE_MANAGER 屬性供每個使用者的階段作業使用。此檔案中所指定的來源對於桌上管理系統內定值來源檔案中所指定的那些 具有優先順序。

使用者可以使用其 HomeDirectory/.Xdefaults 檔案來增加桌上管理系統內定值與整個系統的來源。此檔案中所指定的來源將可經由 RESOURCE_MANAGER 屬性供該使用者的階段作業使用。此檔案中所指定的來源對於桌上管理系統內定值或系統管理者來源檔案中所指定的那些具有優先順序。


註解 -

X 工具箱本身的公用程式指定它將會從 RESOURCE_MANAGER 或從 HomeDirectory/.Xdefaults 其中之一而非兩者載入應用程式的來源。一般而言,這表示會略過使用者的 HomeDirectory/.Xdefaults 檔案。然而,階段作業管理者藉由在如上述的階段作業啟動時將其合併至RESOURCE_MANAGER 內來供應HomeDirectory/.Xdefaults。如果使用者變更 HomeDirectory/.Xdefaults,對新的應用程式而言,要到使用者調用重新載入來源動作時才看得到變更。重新載入來源動作將會指示階段作業管理者重新載入具有內定值、整個系統以及使用者指定的來源之 RESOURCE_MANAGER。此動作會使對整個系統與個人來源檔案所做的變更可供應用程式使用。


有關更多的資訊,請參閱:

啟動色彩伺服器

階段作業管理者作為桌上管理系統的色彩伺服器,並提供以下可用於配置它的 dtsession 來源集。

foregroundColor-控制是否配置前景色彩的像素

dynamicColor-指定是否配置唯讀色彩

shadowPixmaps-指定是要配置頂端陰影或底部陰影的色彩

colorUse-限制色彩配置

writeXrdbColors-指定是否在來源資料庫中放入 *背景*前景 來源

您可以藉由在該檔案中建立 /etc/dt/config/language/sys.resources 與指定色彩伺服器來源來設定所有使用者的色彩伺服器來源。

使用者同樣地可以藉由在 HomeDirectory/.Xdefaults 中指定色彩伺服器來源來設定其自己的階段作業之色彩伺服器來源。

有關設定色彩伺服器來源的更多資訊,請參閱 "管理色彩"

啟動工作區管理者

階段作業管理者負責啟動工作區管理者。依照內定值 /usr/dt/bin/dtwm會啟動。替代視窗管理者可以用 wmStartupCommand 來源來指定。

您可以藉由建立 /etc/dt/config/language/sys.resources 與指定該檔案中具有 Dtsession*wmStartupCommand 來源的視窗管理者之完整路徑名稱及選項來指定替代視窗管理者。

使用者同樣地可以藉由在 HomeDirectory/.Xdefaults 中指定Dtsession*wmStartupCommand 來源來指定其自己的階段作業之替代視窗管理者。

有關視窗管理者的更多資訊,請參閱 第 16章, 自訂工作區管理者

啟動階段作業應用程式

在啟動階段作業時,階段作業管理者將會重新啟動作為部分階段作業儲存的任何應用程式。被視為使用者起始階段作業的應用程式回復之系統內定集可以在/usr/dt/config/language/sys.session 中找到。此檔案不應編輯,因為它將會在後續的桌上管理系統安裝時無條件地重寫。

有關更多的資訊,請參閱 dtsessionfile(4) 線上援助頁。

系統管理者可以藉由將/usr/dt/config/language/sys.session 複製到/etc/dt/config/language/sys.session 並修改後者檔案來取代啟動為使用者起始階段作業的一部份之應用程式集。不像來源檔案,此檔案將會用作桌上管理系統內定檔案的完整取代,因此您可以複製系統內定檔案並作必要的修改。