当前位置: 首页>>技术问答>>正文


Gconf,Dconf,Gsettings以及它们之间的关系

, , ,

问题描述

我试图了解Gconf,Dconf和Gsettings如何工作以及它们之间的关系。

我所知道的是:

  • Gconf – 基于XML的数据库(后端系统)。较旧的。

  • Dconf – 基于BLOB的数据库(后端系统)。较新的一个。

  • Gsettings – 用于编辑设置的CLI工具。看起来它只适用于Dconf(虽然我看到它可能适用于Gconf)。

我知道对于Gconf,有一个GUI – Gconf-editor,以及Dconf – Dconf-editor。

所以:

  1. 哪个后端系统更常用–Dconf或Gconf?

  2. Gsettings适用于他们两个?为什么不显示所有Dconf模式?

  3. Dconf在哪里保存数据?

最佳解决办法

GConf已经过时了。它是较旧的GNOME 2.x配置API和系统,在较新版本中已被DConf /GSettings取代。但是,一些应用程序仍在使用它。

GSettings是DConf的GLib实现,它将数据存储在二进制数据库中。

gsettings命令行工具只是通过GSettings API访问或修改设置的工具,与旧版gconftool命令行工具用于GConf的方式相同。

次佳解决办法

Dconf是一个用于存储配置的数据存储。它是Gconf的替代品,Gconf用于同一目的。最终,任何程序都不应该依赖于Gconf。

Gsettings是一个用于读取和写入配置存储后端的开发库。在Linux上,它使用Dconf,但在Windows上,它使用注册表,而在OS X上,它使用本机数据存储。

建议应用程序开发人员和end-users使用Gsettings,而不是直接使用Dconf。

也可以看看:

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1333.html,未经允许,请勿转载。