如何从旧备份恢复 MATE 面板设置

igo*_*s07 13 panel restore mate

我正在玩 MATE Tweak 工具,突然间一个愚蠢的选项删除了我所有的面板小程序并替换为默认布局 - 那个东西甚至没有先确认破坏性动作!

但是,我确实在旧 PC 中备份了我的主文件夹...我应该复制什么才能恢复面板?我试图寻找.mateconf.config/matedconf/user无济于事 - 在我的新旧电脑上,DConf 编辑器在 org.mate.panel 下没有显示任何有用的东西,只有默认的东西。

Anw*_*war 5

如果您有 dconf 数据库文件的备份,通常在~/.config/dconf/user您可以从该数据库恢复设置。但是需要做一些工作。

Dconf 从配置文件中读取数据库值(请参阅此处的 wiki)。该配置文件的路径是从DCONF_PROFILE环境变量中读取的。

  1. 因此,首先创建一个user2在您的主目录中命名的文件,内容如下

    user-db:user2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 将旧的 dconf 数据库文件放在~/.config/dconf/name 目录中user2。应该user已经有一个带名字的文件了。

  3. 打开终端并从旧数据库中提取设置

    DCONF_PROFILE=~/user2 dconf dump /org/mate > ~/mate-old
    
    Run Code Online (Sandbox Code Playgroud)

    这将以键值格式将旧 dconf 数据库中的值转储到~/mate-old文件中。

  4. 现在将设置加载回当前数据库

    dconf load /org/mate/ < ~/mate-old
    
    Run Code Online (Sandbox Code Playgroud)

这将恢复 mate 的大部分设置。

额外:如果您愿意,您可以使用/代替/org/mate. 但我不推荐这个。


Zan*_*nna 1

这些首选项存储在dconf数据库中,在 GUI、gsettingsCLI(可以找到大量面板设置)或dconfCLI 中进行更改时会写入该数据库。

根据/usr/share/doc/dconf-gsettings-backend/README

所有首选项都存储在一个大型二进制文件中。

我通过实验(更改设置并观察文件的修改时间)确定 Ubuntu MATE 16.04 中的这个单个大型二进制文件绝对是

~/.config/dconf/user
Run Code Online (Sandbox Code Playgroud)

当然,这不是人类可读的

$ file ~/.config/dconf/user
: GVariant Database file, version 0
Run Code Online (Sandbox Code Playgroud)

如果您的备份中没有此文件,那么您可能无法使用该备份来恢复面板设置:(