概述
GConf 是在基于 GNOME2 的系统中用于应用程序属性配置和管理的工具,完成类似于 操作系统中注册表的功能。本文讨论了在 GNOME2 桌面中 GConf 配置管理系统的机制以及使用其相关 API 开发应用程序的方法。本文主要内容包括 GConf 工具的介绍,使用以及相关的开发实践。本文适用于 Linux 应用程序的开发人员。
概述
GConf 是在基于 GNOME2 的 Linux 操作系统中实现对应用程序的配置及管理功能的工具。我们可以把 GConf 理解为 Linux 操作系统中的注册表。然而,它克服了 注册表的一些缺点,比如 Windows 注册表遭到破坏,可能会导致操作系统崩溃,而且 GConf 的配置信息于纯文本的文件中,可读性很好。从根本上来说,GConf 采用用一种 Key/Value 的机制。在 GConf 系统中,应用程序的配置信息都是以 Key/Value 的结构来存储。每一个 Key 值对应应用程序的某种属性,而对应的 Value 则表示该属性的配置信息。 GConf 在后台实现了一个用户配置信息的数据库,这个数据库看上去类似一个文件系统,专门用于存储应用程序的 Key/Value 信息。整个文件系统主要有以下组件构成。包括目录(对应使用 GConf 系统的应用程序。如 /apps/evolution),子目录(一系列属性配置信息的集合。如 /apps/evolution/mail),/schemas(存储属性的键信息)等。
GConf 系统还可以在一个应用程序的属性配置值发生改变的时候通知应用程序。因此,当 GConf 中一个属性值被更改的时候,与之相关的应用程序都能够获得信息,从而根据属性的修改更新作出相应的处理。GConf 主要由三个组件构成:
一系列用户属性的配置集合
一个后台程序 gconfd-2
一个命令行工具 gconftool-2
另外 Gnome 系统还有一个可视化的图形工具 gconf-editor 供用户使用。
Gconf 配置源介绍
GConf 系统中保存了一系列文件路径和位置信息,我们称之为配置源。这些配置源信息存储在GConf 的一个路径文件中。在笔者的 SUSE Linux 系统,该文件为 /etc/opt/gnome/gconf/2/path. (不同的 Linux 发行版本可能略有不同) 。该文件的内容(滤除注释信息)如下:
xml:readonly:/etc/opt/gnome/gconf/gconf.xml.mandatory
include /etc/opt/gnome/gconf/2/local-mandatory.path
include "$(HOME)/.gconf.path"
xml:readwrite:$(HOME)/.gconf
include /etc/opt/gnome/gconf/2/local-defaults.path
xml:readonly:/etc/opt/gnome/gconf/gconf.xml.defaults
GConf 系统中的配置源分为三类
强制源( Mandatory ):该源所描述的属性为只读,用户无法修改该类属性的值。
xml:readonly:/etc/opt/gnome/gconf/gconf.xml.mandatory
include /etc/opt/gnome/gconf/2/local-mandatory.path
用户源( User ) :该源存储了用户可以自行修改和设置的属性信息。
include "$(HOME)/.gconf.path"
xml:readwrite:$(HOME)/.gconf
默认源( Default ) :该源存储了 GConf 系统中属性的默认值。
include /etc/opt/gnome/gconf/2/local-defaults.path
xml:readonly:/etc/opt/gnome/gconf/gconf.xml.defaults
上述源的顺序恰好是 GConf 系统读取应用程序配置属性值的顺序,也就是说存储在强制源中的属性会被优先获取,即使用户源中对该属性进行了自定义配置也会被忽略。
[1]
【责编:Zenghui】
--------------------next---------------------
最后
以上就是能干月亮为你收集整理的gnome2 卷起_基于GNOME2 桌面的GConf 配置系统的介绍-Linux频道-中国IT实验室的全部内容,希望文章能够帮你解决gnome2 卷起_基于GNOME2 桌面的GConf 配置系统的介绍-Linux频道-中国IT实验室所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复