gnome2 卷起_基于GNOME2 桌面的GConf 配置系统的介绍-Linux频道-中国IT实验室

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---------------------

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值