Wie stelle ich die Einstellungen des MATE-Panels von einem alten Backup wieder her?

12

Ich habe mit dem MATE-Tweak-Tool rumgespielt und plötzlich hat eine blöde Option alle meine Panel-Applets entfernt und durch ein Standardlayout ersetzt - das Ding bestätigt nicht einmal die zerstörerische Aktion zuerst!

Ich habe jedoch ein Backup meines Home-Ordners auf dem alten PC ... Was soll ich kopieren, um mein Panel wieder herzustellen? Ich habe versucht zu suchen .mateconf, .config/mateoder dconf/userohne Erfolg - sowohl auf meinem neuen als auch auf meinem alten Computer zeigte der DConf-Editor unter org.mate.panel nichts Nützliches an, nur Standardmaterial.

igorsantos07
quelle
1
rätselhaft. Wenn ich in MATE Tweak auf "Panel-Layout speichern" klicke, wird es in gespeichert, /usr/share/mate-panel/layoutsaber wo werden temporäre Änderungen lokal gespeichert, wenn ich nie auf diese Schaltfläche klicke ? +1 und ich untersuche: -S
Zanna
Ich habe eine weitere Antwort hinzugefügt, die bei mir funktioniert hat
Anwar,

Antworten:

5

Wenn Sie eine Sicherungskopie Ihrer dconf-Datenbankdatei haben, die sich normalerweise in dieser Datei befindet ~/.config/dconf/user, können Sie Einstellungen aus dieser Datenbank wiederherstellen. Aber es muss noch einiges getan werden.

Dconf liest Datenbankwerte aus einer Profildatei (siehe Wiki hier ). Der Pfad dieser Profildatei wird aus der DCONF_PROFILEUmgebungsvariablen gelesen .

  1. Erstellen Sie also zuerst eine Datei mit dem Namen user2in Ihrem Home-Verzeichnis mit dem folgenden Inhalt

    user-db:user2
    
  2. Legen Sie Ihre alte dconf-Datenbankdatei in das ~/.config/dconf/Verzeichnis mit dem Namen user2. Es sollte bereits eine Datei mit Namen vorhanden sein user.

  3. Öffnen Sie ein Terminal und extrahieren Sie die Einstellungen aus der alten Datenbank

    DCONF_PROFILE=~/user2 dconf dump /org/mate > ~/mate-old
    

    Dadurch werden die Werte aus der alten Datenbank dconf im Schlüsselwertformat in der ~/mate-oldDatei ausgegeben .

  4. Laden Sie nun die Einstellungen zurück in die aktuelle Datenbank

    dconf load /org/mate/ < ~/mate-old
    

Dadurch werden die meisten Einstellungen von Mate wiederhergestellt.

Extra: Wenn Sie möchten, können Sie die gesamte Datenbank mit /anstelle von wiederherstellen /org/mate. Aber ich empfehle das nicht.

Anwar
quelle
Leider schlägt die bizarre Anti-Edit-Tendenz von StackExchange erneut zu, so dass hier zu kommentieren ist: Die Antwort enthält einen Fehler. dconf dumpPfade müssen mit Schrägstrichen enden. Darüber hinaus forderte der Autor die Wiederherstellung der Bedienfeldeinstellungen an, und es ist nicht erforderlich, den vollständigen /org/mate/Baum wiederherzustellen , um dies zu tun. Die Bedienfeldeinstellungen befinden sich unter /org/mate/panel/.
Sam Brightman
1

Diese Einstellungen werden in der dconfDatenbank gespeichert, in die geschrieben wird, wenn Änderungen in der GUI, der gsettingsCLI (in der sich viele Bedienfeldeinstellungen befinden) oder der dconfCLI vorgenommen werden.

Gemäß /usr/share/doc/dconf-gsettings-backend/README

Alle Einstellungen werden in einer einzigen großen Binärdatei gespeichert.

Ich habe durch Experiment (Ändern der Einstellungen und Beobachten der Änderungszeit der Datei) festgestellt, dass diese einzelne große Binärdatei in Ubuntu MATE 16.04 auf jeden Fall ist

~/.config/dconf/user

Das ist natürlich nicht für Menschen lesbar

$ file ~/.config/dconf/user
: GVariant Database file, version 0

Wenn Sie diese Datei nicht in Ihrem Backup haben, können Sie das Backup wahrscheinlich nicht verwenden, um Ihre Panel-Einstellungen wiederherzustellen :(

Zanna
quelle
Es ist in der Tat in der Sicherung. Ich würde jedoch nicht darauf vertrauen, einfach die Datei zu kopieren - dconf hat wahrscheinlich einige Eigenschaften während meiner neuen Ubuntu-Installation geändert, und jede andere Anwendung hat in der Zwischenzeit möglicherweise das Gleiche getan. Da es sich um ein solides Blob handelt, kann ich nicht nur die Bedienfeldeinstellungen "kopieren" ... Nun, ich habe versucht, auf das zuzugreifen dconf-editor, um diese Einstellungen zu finden und manuell zu kopieren, habe sie dort jedoch nicht gefunden: (
igorsantos07