База данных dconf как удалить дубликаты и дубликаты?
Мой dconf
база данных ~/.config/dconf/user/
имеет много записей, которые дублируются или дублируются. Некоторые из них являются "обычными" одиночными записями.
Для отображения gsettings
в GUI я использовал этот однострочный ответ. Затем я:
- щелкнул заголовок "Группа" для вторичной сортировки
- нажал кнопку "Ключ" для первичной сортировки
- отрегулирована ширина столбца для размера скриншота
Проверьте выше точность GUI из командной строки:
$ gsettings list-recursively | grep sudoku-difficulty
org.gnome.sudoku print-multiple-sudoku-difficulty 'easy'
$ gsettings list-recursively | grep "plugins.background priority"
org.gnome.settings-daemon.plugins.background priority 97
org.gnome.settings-daemon.plugins.background priority 97
$ gsettings list-recursively | grep print-wrap-mode
org.gnome.gedit.preferences.print print-wrap-mode 'word'
org.gnome.gedit.preferences.print print-wrap-mode 'word'
org.gnome.gedit.preferences.print print-wrap-mode 'word'
ПРИМЕЧАНИЕ: база данных представлена в двоичном формате, а не в последовательном текстовом файле. Я полагаю, что решение будет экспортировать существующую базу данных в текст, массажировать текстовые записи, а затем импортировать в новую базу данных.
файлы
Некоторые могут прокомментировать, какие файлы участвуют, так что вот измененный список locate
команда:
$ llocate /.config/dconf
ACCESS OWNER GROUP SIZE MODIFIED NAME (updatdb last ran: 2018-11-05 08:00:04)
drwxrwxr-x rick rick 4096 Nov 5 06:58 /home/rick/.config/dconf
drwxrwxr-x rick rick 4096 Aug 11 19:37 /home/rick/.config/dconf.bak
-rw-rw-r-- rick rick 27059 Nov 5 06:58 /home/rick/.config/dconf/user
-rw-rw-r-- rick rick 20446 Aug 11 19:37 /home/rick/.config/dconf.bak/user
drwxrwxr-x rick rick 4096 Oct 16 16:47 /mnt/clone/home/rick/.config/dconf
drwxrwxr-x rick rick 4096 Aug 11 19:37 /mnt/clone/home/rick/.config/dconf.bak
-rw-r--r-- rick rick 27270 Oct 16 16:47 /mnt/clone/home/rick/.config/dconf/user
-rw-rw-r-- rick rick 20446 Aug 11 19:37 /mnt/clone/home/rick/.config/dconf.bak/user
drwx------ UNKNOWN UNKNOWN 4096 Oct 13 14:08 /mnt/clone/var/lib/gdm3/.config/dconf
drwxrwxr-x rick rick 4096 Jul 29 15:40 /mnt/old/home/rick/.config/dconf
-rw-rw-r-- rick rick 37094 Jul 29 15:40 /mnt/old/home/rick/.config/dconf/user
/mnt/clone
клон активного раздела, обновленный до 18.04 для тестирования/mnt/old
сломанная версия 16.04 хранится для восстановления файлов/home/rick/.config/dconf/user
реальная база данных под вопросом/home/rick/.config/dconf.bak/user
был создан на новой установке
dconf dump
а также dconf load
не эффективны
Утилита dconf dump
не показывает повторяющиеся записи:
$ dconf dump /org/gnome/settings-daemon/plugins/power/
[/]
idle-dim=false
lid-close-battery-action='nothing'
critical-battery-action='shutdown'
lid-close-ac-action='nothing'
Бег dconf dump
отдельных записей в файл и импортировать тот же файл, используя dconf load
не избавляется от повторяющихся записей:
$ gsettings list-recursively | grep lid-close-battery
org.gnome.settings-daemon.plugins.power lid-close-battery-action 'nothing'
org.gnome.settings-daemon.plugins.power lid-close-battery-action 'nothing'
$ dconf dump /org/gnome/settings-daemon/plugins/power/ > dconf-lid-battery.txt
$ dconf load /org/gnome/settings-daemon/plugins/power/ < dconf-lid-battery.txt
$ gsettings list-recursively | grep lid-close-battery
org.gnome.settings-daemon.plugins.power lid-close-battery-action 'nothing'
org.gnome.settings-daemon.plugins.power lid-close-battery-action 'nothing'