Where Does dconf Store Settings on Linux?
Where dconf keeps the user database and system databases on Linux, and how profiles layer them together...
Last updated
dconf stores GNOME settings in binary GVDB databases rather than text files. Each user gets one database under the config home, while system databases live under /etc/dconf/db compiled from keyfile directories. Profiles layer them with user values winning by default.
Edit through gsettings or dconf tools, never by hand-editing the binary. The format exists for fast lookups, not readability. System admins ship defaults as keyfiles plus locks; users override freely where no lock forbids it. See the admin guide for profiles.
Where dconf stores this, by platform
~/.config/dconf/user
Binary GVDB user database for all GNOME app settings. Read and write through gsettings or dconf, never by editing bytes. System databases in /etc/dconf/db layer underneath via profiles. Back up by copying the file with the session quiet.
Frequently asked questions
how do I back up GNOME settings
Read values with gsettings or dconf dump instead of opening the binary file. Copy the user database file for a raw backup with the session quiet. Locks in system databases override user values for managed machines.
how do admins set default settings
Place keyfiles in a .d directory beside the target database and run dconf update to compile them. User values still win unless locks say otherwise. Profiles in /etc/dconf/profile choose which databases participate.
dconf on NFS homes, how
Point DCONF_PROFILE at a custom profile or use service-db lines syncing to a keyfile. NFS homes need the runtime-dir plus keyfile dance since mmap misbehaves on network mounts. Keep XDG paths consistent between writer and reader processes.
Notice an outdated path? Let us know.