GConf
信息库中的每个首选项都表示为一个键值对。 GConf 首选项键是信息库中与应用程序首选项对应的一个元素。 例如,/apps/gnome-session/options/show_splash_screen 首选项键与会话
首选项工具中登录时显示启动画面选项对应。 并非 GConf
信息库中的所有首选项键都包含在 GNOME 桌面的用户界面中。 例如,面板
首选项工具不包含与 /apps/panel/global/tooltips_enabled 键对应的选项。
信息库的结构类似于一个简单的分级文件系统。 信息库包含以下内容:
与使用 GConf
信息库的应用程序对应的目录。 例如,文件系统包含目录 /apps/metacity。
与首选项类别对应的子目录。 例如,文件系统包含目录 /apps/metacity/general。
列出目录中的首选项键并包含有关键的信息的特殊文件。 例如,目录 /system/http_proxy 中有一个包含有关 HTTP 代理首选项的键信息的文件。
包含说明所有首选项键的文件的/schemas 目录。
通常,首选项键具有简单值,例如:字符串、整数或字符串和整数的列表。 信息库中的首选项键的格式取决于用于读信息库的后端模块。 以下是使用可扩展标记语言 (XML) 后端模块读取信息库时的 /desktop/gnome/interface/font_name 首选项键的示例:
<entry name="font_name" mtime="1038323555" muser="user123" type="string"> <stringvalue>Sans 10</stringvalue></entry>
在本指南中谈到首选项键时,键名称中加上了该键的路径。 例如,/desktop/gnome/interface 子目录中的 font_name 首选项键写作 /desktop/gnome/interface/font_name。
GConf
信息库包含一系列被称为配置源的存储位置。 配置源列在 GConf 路径文件中。 GConf
路径文件的位置是 /etc/gconf/gconf-version-number/path 。 每个用户都有一个路径文件。 该路径文件指定了每个配置源的以下信息:
用于读取信息库的后端模块。
对信息库的权限。
信息库的位置。
GConf
路径文件还包含 include 指令。 默认情况下,GConf
路径文件的目录如下所示:
xml:readonly:/etc/gconf/gconf.xml.mandatory include /etc/gconf/2/local-mandatory.path include "$(HOME)/.gconf.path" include /etc/gconf/2/local-defaults.path xml:readwrite:$(HOME)/.gconf xml:readonly:/etc/gconf/gconf.xml.defaults
当 GConf
搜索首选项值时,GConf
按照路径文件中指定的顺序读取配置源。 下表说明路径文件中的配置源:
配置源 |
说明 |
---|---|
强制 |
此配置源上的权限设为只读。 用户不能覆盖此配置源中的值,因此,此源中的首选项是强制的。 |
用户 |
此配置源存储在用户主目录中的 .gconf 目录中。 用户设置首选项时,新的首选项信息将被添加到此位置。 您可以使用 |
缺省值 |
此配置源包含默认的首选项设置。 |
路径文件中配置源的顺序确保强制首选项设置可以改写用户首选项设置。 此顺序还确保用户首选项设置将改写默认首选项设置。 也就是说,GConf
按以下优先级顺序应用首选项:
强制首选项
用户指定的首选项
默认首选项
GConf
路径文件中的 include 指令使系统管理员能够指定其它配置源。
包括的配置源 |
说明 |
---|---|
/etc/gconf/2/local-mandatory.path |
使用此配置源来存储特定系统所必需的首选项值。 |
$(HOME)/.gconf.path |
用户在主目录中一个名为 .gconf.path 的文件中指定此配置源的位置。 |
/etc/gconf/2/local-defaults.path |
使用此配置源来存储特定系统的默认首选项值。 |
GConf 架构是 GConf 架构键和 GConf 架构对象的统称。 下表说明架构键和架构对象以及这些项目与首选项键之间的关系:
项目 |
说明 |
---|---|
首选项键 |
|
架构键 |
存储首选项键的架构对象的键。 |
架构对象 |
配置源中包含有关首选项键的信息的元素,例如以下信息:
|
下表给出首选项键、架构键和架构对象的示例:
项目 |
实例 |
---|---|
首选项键 |
/desktop/gnome/interface/font_name |
架构键 |
/schemas/desktop/gnome/interface/font_name |
架构对象 |
<schema> <applyto>/desktop/gnome/interface/font_name</applyto> <key>/schemas/desktop/gnome/interface/font_name</key> <owner>gnome</owner> <type>string</type> <default>Sans 10</default> <locale name="C"> <short>默认字体</short> <long>gtk+ 使用的默认字体名称。</long> </locale> </schema> |
可以将一个架构键与一个首选项键关联起来。 例如,下面的 /desktop/gnome/interface/font_name 键包含一个架构键:
<entry name="font_name" mtime="1034873859" schema="/schemas/desktop/gnome/interface/font_name"/>
将架构键与首选项键相关联后,首选项将使用架构键的架构对象中指定的建议值。 建议值包含在架构对象的 <default> 元素中。 默认情况下,默认配置源中所有的首选项键都与架构键相关联。
通常,架构存储在默认的配置源中。
架构从架构定义文件生成。 架构定义文件定义特定应用程序中所有键的特性。 架构定义文件的扩展名为 .schemas。
架构定义文件包含在 /etc/gconf/schemas 目录中。 可以用架构定义文件创建新的配置源。
有些架构定义文件与 GNOME 桌面的用户界面的一部分密切相关。 例如,system_http_proxy.schemas 对于互联网
首选项工具 而另一些架构定义文件包含 GNOME 桌面的用户界面中不显示的首选项键。 例如,用户界面中就没有 /apps/panel/global/tooltips_enabled 键。
GNOME 桌面用户界面的某些部分所包含的首选项可能表示一个以上的架构定义文件中的首选项键。 例如,快捷方式
首选项工具包含的首选项表示 panel-global-config.schemas 和 metacity.schemas 文件中的首选项值。