Ho eseguito un backup del file in cui il mio dconf
il database è memorizzato (~/.config/dconf/user
che è un file binario), e ora ho bisogno di spostare alcune chiavi dal backup a dconf
in uso.
Come posso visualizzare il contenuto di dconf
di cui è stato eseguito il backup senza metterlo "al suo posto" e visualizzarlo ad esempio con dconf-editor
?
Risposta accettata:
Per visualizzare il contenuto di quel file è possibile rinominarlo, ad es. test
– mettilo sotto ~/.config/dconf/
e quindi avere dconf
leggere/scaricare le impostazioni da quel file.
Per impostazione predefinita, dconf
legge il db utente trovato in $XDG_CONFIG_HOME/dconf/
:
Un "user-db"
line specifica un database utente.
Questi database si trovano in $XDG_CONFIG_HOME/dconf/
. Il nome del file da aprire in quella directory
è esattamente come è scritto nel profilo. Questo file
dovrebbe essere nel formato database binario dconf. Nota che XDG_CONFIG_HOME
non può essere impostato/modificato per terminale o sessione,
perché allora lo scrittore e il lettore lavorerebbero su DB diversi
(lo scrittore viene avviato da DBus e non può vedere quella variabile).
Di conseguenza, avresti bisogno di un profilo personalizzato che punti a quel particolare file db, ad es. user-db:test
e poi istruisci dconf
per scaricare i dati (usando il profilo personalizzato) tramite il DCONF_PROFILE
variabile d'ambiente:
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
Il risultato è un file (old_settings
) contenente le impostazioni di dconf
di cui è stato eseguito il backup file, es.:
[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'
.......
Puoi quindi rimuovere quei file:
rm -f ~/db_profile ~/.config/dconf/test
e carica le vecchie impostazioni nel database corrente:
dconf load / < old_settings
Se vuoi scaricare solo impostazioni specifiche, fornisci semplicemente il percorso:
DCONF_PROFILE=~/db_profile dconf dump /org/gnome/desktop/wm/preferences/
[/]
num-workspaces=4
titlebar-font='DejaVu Sans Bold Oblique 10'
ma nota che per ogni percorso dovresti avere un file diverso e quando lo carichi dovresti specificare il percorso di conseguenza:
dconf load /org/gnome/desktop/wm/preferences/ < old_wm_settings
Nota anche che, a causa di modifiche a monte, il vecchio dconf
i database potrebbero contenere percorsi, chiavi e valori che non sono validi nelle versioni più recenti, quindi piena compatibilità tra i file db creati da diverse versioni di dconf
non è sempre garantito. In tal caso, dovresti controllare le old_settings
risultanti file e rimuovere o modificare manualmente le voci non valide prima di caricarlo nel database corrente.