如何清理我的 dconf 数据库?

hto*_*que 43 maintenance dconf

Dconf 还很年轻,但我的数据库已经乱七八糟,有很多“无模式”键。有没有办法做一些清理,或者我需要从头开始(通过删除 ~/.config/dconf/user 我猜)?

hto*_*que 37

使用该dconf reset命令可以做到这一点,但尚不清楚这是否是错误的副作用。

如果您在dconf-editor打开时执行此操作,它可能会崩溃。


Mik*_*kov 5

如果要清理 dconf 数据库,首先必须通过以下方式转储整个 dconf 配置:

morfik:~$ cd ~/.config/dconf/
morfik:~/.config/dconf$ dconf dump / > user-backup
morfik:~/.config/dconf$ ls -al ./user-backup
-rw-r--r-- 1 morfik morfik 30.0K 2015-02-07 08:18:04 ./user-backup
morfik:~/.config/dconf$ rm user
Run Code Online (Sandbox Code Playgroud)

在这些步骤之后,您必须重新打开图形会话(注销/登录)。这将~/.config/dconf/user重新创建几乎 0 内容的文件——默认设置。

至于user-backup您之前创建的文件,它只是一个纯文本文件:

...
[apps/light-locker]
late-locking=false
lock-after-screensaver=uint32 1
lock-on-suspend=true
...
Run Code Online (Sandbox Code Playgroud)

因此,您可以编辑它并从该文件中删除所需的条目/块。换句话说——清理它。

完成后,加载它:

morfik:~/.config/dconf$ dconf load / < ./user-backup
morfik:~/.config/dconf$ ls -al ./user-backup
-rw-r--r-- 1 morfik morfik 14.0K 2015-02-07 08:26:23 ./user-backup
morfik:~/.config/dconf$ dconf update /
Run Code Online (Sandbox Code Playgroud)

我认为您应该在此之后再次重新启动图形会话。

就是这样,但是您必须记住,所有具有默认值的条目都不会被保存——当某些应用程序要求它们时,它们将被重新创建,这是一件好事,因为您只想备份您更改过的值.