问题描述
我试图了解Gconf,Dconf和Gsettings如何工作以及它们之间的关系。
我所知道的是:
-
Gconf – 基于XML的数据库(后端系统)。较旧的。
-
Dconf – 基于BLOB的数据库(后端系统)。较新的一个。
-
Gsettings – 用于编辑设置的CLI工具。看起来它只适用于Dconf(虽然我看到它可能适用于Gconf)。
我知道对于Gconf,有一个GUI – Gconf-editor,以及Dconf – Dconf-editor。
所以:
-
哪个后端系统更常用–Dconf或Gconf?
-
Gsettings适用于他们两个?为什么不显示所有Dconf模式?
-
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。
也可以看看: