X 顯示管理器(XDM) 是一個X視窗系統用於進行登陸會話管理的可選項。 這個可以應用於多種情況下,包括小 “X Terminals”, 桌面,大網絡顯示服務器。既然 X 視窗系統不受網絡和協議的限制,那對於通過網絡連接起來的運行 X 客戶端和服務器端的不同機器, 就會有很多的可配置項。 XDM 提供了一個選擇要連接到哪個顯示服務器的圖形接口,只要鍵入如登陸用戶名和密碼這樣的驗證信息。 您也可以把 XDM 想象成與 getty(8) 工具一樣。為用戶提供了同樣功能。它可以完成系統的登陸任務, 然後為用戶運行一個會話管理器 (通常是一個 X 視窗管理器)。接下來 XDM 就等待這個程序退出,發出信號用戶已經登陸完成,應當退出屏幕。 這時, XDM 就可以為下一個登陸用戶顯示登陸和可選擇屏幕。
XDM 精靈程序在 /usr/X11R6/bin/xdm 中。您可以在任何時候 用 root 來運行這個程序,在本地機器上,它將啟動管理X的畫面。如果要 XDM 每次機器一啟動就開始運行, 一個簡單的辦法是在 /etc/ttys 中加入一個記錄。在默認的 /etc/ttys 文件中用於運行 XDM 守護程序的一行是這樣的: ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure 默認情況下,這個記錄是關閉的,這個程序將管理的終端名稱是 ttyv8。這意味著 XDM 將運行在第9個虛擬終端上。
XDM 的配置目錄是在 /usr/X11R6/lib/X11/xdm中。在這個目錄中, 您會看到幾個用來改變 XDM 行為和外觀的文件。您會找到這些文件:
文件 描述
Xaccess 客戶端授權規則。
Xresources 默認的X資源值。
Xservers 遠程和本地顯示管理列表。
Xsession 用於登陸的默認的會話腳本。
Xsetup_* 登陸之前用於加載應用程序的腳本。
xdm-config 運行在這台機器上的所有顯示的全局配置。
xdm-errors 服務器程序產生的錯誤。
xdm-pid 當前運行的 XDM 的進程 ID。
當 XDM 運行時,在這個目錄中有幾個腳本和程序可以用來設置桌面。 這些文件中的每一個的用法都將被簡要地描述。這些文件的更詳細的語法和用法在 xdm(1) 中將有詳細描述。 默認的配置是一個矩形的登陸窗口,上面有機器的名稱, “Login:” 和 “Password:”。如果您想設計您自己個性化的 XDM 屏幕,這是一個很好的起點。
連接到 XDM 的用來控制顯示的協議 叫做 X 顯示管理連接協議(XDMCP)。 這個文件是一個用來控制來自遠程機器的XDMCP連接。默認的,它允許任何客戶端連接,但那沒有用,除非 xdm-config 被修改成用於偵聽遠程連接。Xresources 是一個默認的用來顯示選項和登陸屏幕的應用程序文件。這就是您能夠定制登陸程序的外觀的地方。這個格式與 X11 文檔中描述的默認應用程序文件是一樣的。Xservers 是一個選擇者應當提供的作為可選的遠程顯示列表。Xsession 是一個用戶登陸後針對 XDM 的默認會話腳本。通常,在 ~/.xsession 中每個用戶將有一個可定制的會話腳本。Xsetup_* 在顯示選擇者或登陸接口之前,這些將被自動運行。 這是一個每個顯示都要用到的腳本,叫做 Xsetup_, 後面會跟一個本地顯示的數字(比如 Xsetup_0)。典型的,這些腳本將在後台 (如 xconsole)運行一個或兩個程序。xdm-config 以應用程序默認值的形式, 提供了在安裝時所使用的普適的顯示設置。xdm-errors 這個文件包含了 XDM 正設法運行的的 X 服務器 的輸出。 如果 XDM 正設法運行的顯示由於某種原因被掛起,那這是一個尋找錯誤信息的好地方。 這些信息會在每一個會話的基礎上被寫到用戶的 ~/.xsession-errors 文件中。
運行一個網絡顯示服務器
對於其他客戶端來說,為了連接到顯示服務器,您將必須編輯訪問控制規則,然後啟用連接偵聽。默認的這些被設置成比較保守的值。 要讓XDM能偵聽連接,先要在 xdm-config 文件中注釋掉一行: ! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0 然後重新啟動XDM。 記住默認應用程序文件的注釋以“!” 字母開始,不是“#”。 您需要設置嚴格的訪問控制。看看在 Xaccess文件中的實例記錄,可以參考 xdm(1) 的聯機手冊。有幾個替換默認 XDM程序的方案。它們是, 上一節已經描述過的kdm (與 KDE捆綁在一起)。 kdm 提供了許多視覺上的改進和局部的修飾,同樣能讓用戶在啟動時能選擇他們喜歡的窗口管理器。