如何将 GNOME 设置保存在文件中?

如何将 GNOME 设置保存在文件中?

我保存我的配置以便稍后轻松恢复。

最近,我偶然发现了一个问题需要使用gsettings命令更改 GNOME 设置的地方。

有没有办法将这些设置保存在可以符号链接或复制到 GNOME 期望的预定义位置的文件中?我更喜欢一种不需要编写脚本来调用的方法gsettings

答案1

这里对“Dobey”命令做了一些修正:

可以像这样保存所有 donf 设置:

dconf dump / > dconf-settings.ini

但你必须像那样恢复它们!:

dconf load / < dconf-settings.ini

答案2

GNOME 设置通常通过 GSettings API 存储,它是 DConf 规范的实现。它将设置存储在二进制数据库中,登录时不应替换该数据库。

相反,需要导出设置,然后再次加载。

您可以使用dconf dump / > dconf-settings.ini将设置转储到 INI 文件中,然后使用cat dconf-settings.ini | dconf load /重新加载这些设置。您可以/用特定路径替换 以限制转储和加载的设置。请参阅man dconf那里了解更多详细信息。

gsettings如果您只想设置一个键,而不是整个路径,那么最好使用gsettings get脚本gsettings set

答案3

man 7 dconf

KEY FILES
   To facilitate system configuration with a text editor, dconf can
   populate databases from plain text keyfiles. For any given system
   database, keyfiles can be placed into the /etc/dconf/db/database.d/
   directory. The keyfiles contain groups of settings as follows:

       # Some useful default settings for our site

       [system/proxy/http]
       host='172.16.0.1'
       enabled=true

       [org/gnome/desktop/background]
       picture-uri='file:///usr/local/rupert-corp/company-wallpaper.jpeg'

   After changing keyfiles, the database needs to be updated with the
   dconf(1) tool.

如果您只需要让 GNOME 从文件中提取设置而无需脚本,这可能是最简单的方法,但它需要管理员访问权限才能创建密钥文件。

另一个选项是保存二进制 dconf 数据库本身,但对于使用 Git 作为版本控制来说,这不是一个好选择。数据库通常位于$XDG_CONFIG_HOME/dconf~/.config/dconf即默认情况下)。请参阅PROFILES手册页中的部分。

手册页还说:

   The binary database format that dconf uses by default is not suitable
   for use on NFS, where mmap does not work well. To handle this common
   use case, dconf can be configured to place its binary database in
   XDG_RUNTIME_DIR (which is guaranteed to be local, but non-persistent)
   and synchronize it with a plain text keyfile in the users home
   directory.

但目前尚不清楚如何在没有脚本的情况下做到这一点。

相关内容