11.2 手動管理設定檔

如果您慣於手動編輯組態檔案,而不想使用圖形工具,KIOSK 架構也可讓您這樣做。設定檔中的每個組態檔案都是純文字檔案,可用您選擇的編輯器加以編輯。KIOSK 的組態和部署選項已於http://websvn.kde.org/trunk/KDE/kdelibs/kdecore/README.kiosk?view=markup的「KDE 來源儲存區」中詳細說明。請參閱這個資源以得知詳細資訊。以下僅說明使用 KIOSK 架構所需的基礎。

11.2.1 檔案系統階層

KDE 會在固定的目錄樹狀結構中讀取和儲存 KDE 環境本身及 KDE 應用程式所用的檔案──在這種情況下,這種目錄樹狀結構也稱為設定檔。依照預設,有兩種目錄:/opt/kde3~/.kde~/.kde 目錄包含使用者專用設定。/opt/kde3 目錄包含套件隨附的資料與組態檔。我們不建議您在該處進行任何變更,因為下次更新時會覆寫這些檔案。因此,您可以以系統管理員的身分建立其他供 KIOSK 架構使用的樹狀結構。新增的固定目錄樹狀結構的預設位置是 /var/lib/kde-profiles。您可在 /etc/kde3rc 中新增自定位置。請參閱 KIOSK 文件以取得詳細資訊。

固定的目錄樹狀結構包含下列目錄 (雖然不必所有目錄都存在):

bin

可執行檔

cgi-bin

說明中心程序檔

lib

文件庫

socket-<HOSTNAME>

通訊插槽

tmp-<HOSTNAME>

暫存檔案

cache-<HOSTNAME>

快取的資料

share

應用程式和組態資料

share 目錄包含許多子目錄,其中幾個目錄為:

share/applications

出現在 KDE 功能表上的所有應用程式的 .desktop 檔案

share/applnk

KDE 功能表結構

share/config

應用程式和元件的組態檔案,以及全域組態檔案 kdeglobals

share/icons

圖示,依佈景主題、尺寸和使用類別分類

share/mimelnk

具有 mime 類型的 .desktop 檔案

share/wallpapers

可做為背景圖片使用的影像

優先順序

KDE 會掃描系統已知的所有目錄樹狀結構。如果特定檔案出現在多個目錄樹狀結構中,優先順序會決定應使用哪個檔案。

掃描組態檔案時,會多套用一個規則。一般而言,同名的多個組態檔案的內容會合併。但如果同一個組態鍵定義多次,則必須由優先順序最高的檔案中的鍵來決定要使用哪個值。

規則的優先順序為:

  1. 使用者目錄 (~/.kde)

  2. /etc/kde3rc 中設定的目錄。

  3. 全系統預設目錄 (/opt/kde3)

做為使用者,您可以設定 $KDEDIRS 變數來覆寫這個順序。目錄應該以冒號 (:) 隔開。第一個目錄的優先順序最高,最後一個目錄的優先順序最低。

11.2.2 組態檔案格式

KDE 組態儲存在 UTF-8 格式的文字檔中。每個組態選項由鍵值組構成,而且放在群組裡:

[Group 1]
  key=value
  key 2=value 2

鍵與值開頭或結尾的空白會被忽略。但是,鍵和值都可以包含空白 (如上例所示)。若某個值的開頭或結尾應為空白或包含斷行等特殊字元,請使用下列特殊程式碼:

  • \s:空白

  • \t:tab

  • \r:強制換行

  • \n:新行

  • \\:反斜線

外圍程序展開

為使用動態產生的值,KDE 允許您使用外圍程序展開。如果某鍵後面接著 [$e],就會啟動外圍程序展開。如果使用這個建構,第一次讀取值時,就會將它寫入檔案中。您可以使用 [$ie] 鎖定這種行為,讓每次讀取組態檔案時都會評估展開。外圍程序展開可讓您使用環境變數或指令輸出做為值:

[example group]
  UserName=$USER
  Group=$(id -g)
  HomeDirectory=$HOME

當地語系化

所有組態值都可以使用已新增到鍵項目的語言進行當地語系化:

[example group]
  Label=Language
  Label[de]=Sprache
  Label[ru]=Язык

組態項目鎖定

您可以保護所有組態項目不被覆寫。您可以鎖定整個組態檔案、群組或個別鍵。作法分別是在檔案開始處的單獨行上新增 [Si]、將 [Si] 放在群組名稱後面或將 [Si] 新增到鍵後面。

[example group][$i]
  Label=Language

[example group 2]
  UserName[$i]=$USER

11.2.3 啟動設定檔

您可在檔案系統中的任何地方建立設定檔。為了讓 KDE 環境能夠讀取您的設定檔,您必須在 /etc/kde3rc 中讓系統知道設定檔的存在。預設設定檔位置 /var/lib/kde-profiles/ 已經設定在那裡。

根據預設,自定設定檔與使用者或群組沒有任何關聯。您可以在 /etc/kde-user-profile 的使用者設定檔對應檔案中建立這個關聯。這裡只有一個例如,就是預設設定檔。如果您在 /var/lib/kde-profiles/ 中建立名稱為 default 的設定檔,這個檔案會自動與這台機器上的所有使用者建立關聯 (預設狀況下,這個設定檔不存在)。

請參閱 KIOSK 架構說明文件,以進一步了解啟動設定檔並將設定檔對映至使用者的詳細資訊。

11.2.4 範例

SUSE Linux Enterprise 隨附三個預先定義的設定檔 (redmond、simplified、Thinclient),位於 /var/lib/kde-profiles/。您可以使用其中任一個做為您個人設定檔的範本。