![什么时候 `dconf dump` 和 `dconf load` 不是相反的?](https://linux22.com/image/184040/%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%20%60dconf%20dump%60%20%E5%92%8C%20%60dconf%20load%60%20%E4%B8%8D%E6%98%AF%E7%9B%B8%E5%8F%8D%E7%9A%84%EF%BC%9F.png)
我使用dconf dump /
和dconf load /
来保持配置同步。这通常有效,但我观察到有时会出现差异,即转储的结果与之前加载的结果不同:
frank@gabun:~$ dconf load / < dump5
frank@gabun:~$ dconf dump / > dump11
dump11
应该生成一个与 完全相同的文件dump5
(在许多情况下是),但在本例中两者不同,没有警告或错误报告。 load和dump不相反的原因是什么?我什么时候必须期待有所不同?
这些观察是在 Debian buster 和相应的 Ubuntu 20.10 安装上进行的,libconf1 分别为 0.30.1-2 0.38.0-1。
我在这里展示了两个文件之间的区别:
frank@gabun:~$ diff dump5 dump11
165a166,167
> autoar-filter='none'
> autoar-format='zip'
233a236,239
> [org/gnome/nm-applet/eap/06ba9272-4479-41c9-8fd5-be7f3cfbb8f9]
> ignore-ca-cert=false
> ignore-phase2-ca-cert=false
>
517a524,529
> [org/mate/panel/objects/object-17]
> launcher-location='/usr/share/applications/vivaldi-stable.desktop'
> object-type='launcher'
> panel-right-stick=false
> position=452
> toplevel-id='top'
677a690
> backspace-binding='ascii-del'
678a692
> delete-binding='escape-sequence'
注意:我已从已安装的程序中删除了 vivaldi-stable。
我发现加载空文件没有效果
dconf dump / > dump1
touch dump0
dconf load / < dump0
dconf dump0 / > dump2 # should be the same, is not
diff dump2 dump0 # should be the same, is not
diff dump2 dump1 # this is the same!