Ich habe eine Sicherungskopie der Datei erstellt, in der meine dconf
Datenbank gespeichert (~/.config/dconf/user
das ist eine Binärdatei), und jetzt muss ich einige Schlüssel aus dem Backup in die dconf
verschieben im Einsatz.
Wie kann ich den Inhalt der gesicherten dconf
anzeigen ohne es „an Ort und Stelle“ zu setzen und es beispielsweise mit dconf-editor
anzuzeigen ?
Akzeptierte Antwort:
Um den Inhalt dieser Datei anzuzeigen, können Sie sie umbenennen – z. test
– platzieren Sie es unter ~/.config/dconf/
und dann dconf
liest/speichert die Einstellungen aus dieser Datei.
Standardmäßig dconf
liest die user-db gefunden in $XDG_CONFIG_HOME/dconf/
:
Eine "user-db"
Zeile gibt eine Benutzerdatenbank an.
Diese Datenbanken befinden sich in $XDG_CONFIG_HOME/dconf/
. Der Name der Datei, die in diesem
Verzeichnis geöffnet werden soll, ist genau so, wie er im Profil geschrieben ist. Diese Datei
sollte im binären dconf-Datenbankformat vorliegen. Beachten Sie, dass XDG_CONFIG_HOME
kann nicht pro Terminal oder Session gesetzt/geändert werden,
weil dann Writer und Reader auf unterschiedlichen DBs arbeiten würden
(der Writer wird von DBus gestartet und kann diese Variable nicht sehen).
Infolgedessen benötigen Sie ein benutzerdefiniertes Profil, das auf diese bestimmte db-Datei verweist – z. user-db:test
und dann dconf
anweisen um die Daten (unter Verwendung des benutzerdefinierten Profils) über DCONF_PROFILE
auszugeben Umgebungsvariable:
cd
cp /path_to_backup_dconf/user ~/.config/dconf/test
printf %s\\n "user-db:test" > db_profile
DCONF_PROFILE=~/db_profile dconf dump / > old_settings
Das Ergebnis ist eine Datei (old_settings
) mit den Einstellungen aus Ihrer gesicherten dconf
Datei, z.B.:
[org/gnome/desktop/interface]
font-name='DejaVu Sans Oblique 10'
document-font-name='DejaVu Sans Oblique 10'
gtk-im-module='gtk-im-context-simple'
clock-show-seconds=true
icon-theme='HighContrast'
monospace-font-name='DejaVu Sans Mono Oblique 10'
[org/gnome/desktop/input-sources]
[email protected](ss) []
[email protected] []
[org/gnome/desktop/wm/preferences]
num-workspaces=4
titlebar-font='DejaVu Sans Bold Oblique 10'
.......
Sie könnten dann diese Dateien entfernen:
rm -f ~/db_profile ~/.config/dconf/test
und die alten Einstellungen in die aktuelle Datenbank laden:
dconf load / < old_settings
Wenn Sie nur bestimmte Einstellungen sichern möchten, geben Sie einfach den Pfad an:
DCONF_PROFILE=~/db_profile dconf dump /org/gnome/desktop/wm/preferences/
[/]
num-workspaces=4
titlebar-font='DejaVu Sans Bold Oblique 10'
Beachten Sie jedoch, dass Sie für jeden Pfad eine andere Datei haben sollten, und wenn Sie sie laden, sollten Sie den Pfad entsprechend angeben:
dconf load /org/gnome/desktop/wm/preferences/ < old_wm_settings
Beachten Sie auch, dass aufgrund von Upstream-Änderungen ältere dconf
Datenbanken können Pfade, Schlüssel und Werte enthalten, die in neueren Versionen ungültig sind, also volle Kompatibilität zwischen db-Dateien, die von verschiedenen Versionen von dconf
erstellt wurden ist nicht immer gewährleistet. In diesem Fall müssten Sie die resultierenden old_settings
überprüfen Datei und entfernen oder bearbeiten Sie die ungültigen Einträge manuell, bevor Sie sie in Ihre aktuelle Datenbank laden.