Di mana GSettings menyimpan file-nya?

16

Saya ingin melihat file-file yang digunakan oleh dconf-editor untuk membaca / menulis pengaturan, dan saya berasumsi bahwa mereka dikelola oleh gsettings. Di mana file-file ini disimpan di sistem, dan dalam format apa?

tepang
sumber
3
Untuk mengetahui lokasi file, buat beberapa perubahan dan jalankan find ~/.[!.]* -mmin -5.
Gilles 'SO- stop being evil'

Jawaban:

13

Mengikuti beberapa saran , saya membuat perubahan dan menjalankan ini:

find ~/.[!.]* -mmin -5

Di antara hasil yang ditampilkan adalah ~/.config/dconf/user. Ini adalah file biner, semacam basis data tempat GSettings menyimpan barang.

tepang
sumber
1
Jika Anda perlu membaca (bagian dari) file biner itu, [solusi ini | askubuntu.com/a/368160/145568] berguna ...
sxc731
3

Inilah yang dikatakan manual untuk dconf:

dconf-editor membaca skema gsettings dari $ XDG_DATA_DIRS / glib-2.0 / schemas untuk mendapatkan deskripsi, nilai default dan nilai yang diizinkan untuk kunci.

Jadi untuk mengetahui di mana file-file ini yang harus Anda lakukan adalah membuka terminal dan menulis ini di:

> echo $XDG_DATA_DIRS

Di situlah jawaban Anda akan (asalkan sudah diatur) jika tidak diatur coba

> set | grep XDG

Anda harus menemukan beberapa variasi pada nama itu dengan folder dconf di dalamnya. Bagi saya variasinya adalah. XDG_RUNTIME_DIRyang diatur ke /run/user/1000dan memegang direktori yang disebut dconfdengan file biner di dalamnya.

Pada akhirnya, jika Anda ingin menemukan informasi yang dapat dibaca manusia yang bermanfaat, Anda akan lebih baik mencari skema itu sendiri daripada file biner.

Murai
sumber
1

Metode yang lebih baik adalah strace untuk mengetahuinya. Menggunakan file biner, mengapa untuk beberapa ide yang salah tentang kinerja, betapa bodohnya karena berbagai alasan! KDE melakukannya dengan benar tetapi tidak seringan xfce dengan nautilus!

Kevin Chadwick
sumber