Hice una copia de seguridad del archivo donde mi dconf
se almacena la base de datos (~/.config/dconf/user
que es un archivo binario), y ahora necesito mover algunas claves de la copia de seguridad a dconf
en uso.
¿Cómo puedo ver el contenido de la copia de seguridad dconf
? sin ponerlo "en su lugar" y verlo con, por ejemplo, dconf-editor
?
Respuesta aceptada:
Para ver el contenido de ese archivo, puede cambiarle el nombre, p. test
– colóquelo debajo de ~/.config/dconf/
y luego tener dconf
leer/volcar la configuración de ese archivo.
Por defecto, dconf
lee el user-db encontrado en $XDG_CONFIG_HOME/dconf/
:
Un "user-db"
línea especifica una base de datos de usuario.
Estas bases de datos se encuentran en $XDG_CONFIG_HOME/dconf/
. El nombre del archivo a abrir en ese directorio
es exactamente como está escrito en el perfil. Se espera que este archivo
esté en formato de base de datos binaria dconf. Tenga en cuenta que XDG_CONFIG_HOME
no se puede establecer/modificar por terminal o sesión,
porque entonces el escritor y el lector estarían trabajando en bases de datos diferentes
(el escritor es iniciado por DBus y no puede ver esa variable).
Como resultado, necesitaría un perfil personalizado que apunte a ese archivo db en particular, p. user-db:test
y luego instruir a dconf
para volcar los datos (utilizando el perfil personalizado) a través de DCONF_PROFILE
variable de entorno:
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
El resultado es un archivo (old_settings
) que contiene la configuración de su copia de seguridad dconf
archivo, por ejemplo:
[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'
.......
A continuación, puede eliminar esos archivos:
rm -f ~/db_profile ~/.config/dconf/test
y cargue la configuración anterior en la base de datos actual:
dconf load / < old_settings
Si desea volcar solo configuraciones específicas, proporcione la ruta:
DCONF_PROFILE=~/db_profile dconf dump /org/gnome/desktop/wm/preferences/
[/]
num-workspaces=4
titlebar-font='DejaVu Sans Bold Oblique 10'
pero tenga en cuenta que para cada ruta debe tener un archivo diferente y cuando lo cargue debe especificar la ruta en consecuencia:
dconf load /org/gnome/desktop/wm/preferences/ < old_wm_settings
También tenga en cuenta que, debido a los cambios anteriores, dconf
las bases de datos pueden contener rutas, claves y valores que no son válidos en las versiones más recientes, por lo que la compatibilidad total entre los archivos db creados por diferentes versiones de dconf
no siempre está garantizado. En ese caso, tendría que inspeccionar la old_settings
resultante y elimine o edite manualmente las entradas que no son válidas antes de cargarlo en su base de datos actual.