Где хранится информация «Настройки»?

10

Когда я настраиваю параметр в меню «Настройки» в Ubuntu, где хранится эта информация? Например, если я добавлю настраиваемое сочетание клавиш или установлю отображение по умолчанию, откуда эта информация впоследствии будет получена ОС? Я уверен, что это где-то заканчивается в текстовом файле, но я еще не нашел его (вероятно, потому что я не совсем уверен, где искать).

Обновить:

ВОТ ЭТО ДА! Все приведенные ниже ответы были очень полезными! Мой вопрос, возможно, был слишком общим, и в идеале я бы принял все ответы как правильные, поскольку все они предоставляют очень полезные инструменты для поиска полезной информации о конфигурации (или другой информации).

Я принимаю ответ @ AB, потому что совершенно dconf watch /поцарапал мой специфический зуд. Тем не менее, я бы направил будущих читателей к ответу @ serg за его подробности и к ответу @DK Bose за его общую полезность. Я бы также посоветовал любому с подобным вопросом поэкспериментировать со всеми предложенными командами, как я буду делать!

elethan
источник
2
Если пользователь имеет отношение к 1-му месту, это посмотреть ~/.config.
Rinzwind
Вау, это похоже на очевидное место, чтобы начать искать! Спасибо!
одиннадцатое
NP :-) Хотя не все программное обеспечение соблюдает его ;-), и это работает только для пользовательских настроек. Существует также ~./gconfи ~/gnome*;)
Rinzwind

Ответы:

7

Есть много возможных мест:

  1. Ваша папка конфигурации ~/.config. Смотреть с

    inotifywatch -e modify,create,delete -r ~/.config
    
  2. Точечные файлы направляются в вашу домашнюю папку. Смотрите, например, вашу .mozillaпапку с

    inotifywatch -e modify,create,delete -r ~/.mozilla
    
  3. Файлы в вашей локальной папке ~/.local. Смотреть с

    inotifywatch -e modify,create,delete -r ~/.local
    
  4. База dconfданных, смотреть с

    dconf watch /
    

    и внести некоторые изменения, чтобы проверить это ...

AB
источник
4

Один из возможных общих подходов заключается в следующем. Закройте все другие программы, кроме той, которую вы собираетесь настроить. Сделай твик. Затем немедленно запустите что-то вроде этого:

find ~/ -mmin -1 -type f -ls

Вы можете увидеть некоторые хиты, которые вы можете решить, не имеют отношения к делу. findпозволяет устранить их:

find ~/ ! -path "*mozilla*" ! -path "*google-chrome*" ! -path "*cache*" ! -path "*dropbox*" -mmin -1 -type f -ls

Вы можете добавлять или удалять пути, в зависимости от ваших потребностей.

В качестве примера я изменю настройку текстового редактора Mousepad, а затем запускаю длинную версию.

$ find ~/ ! -path "*mozilla*" ! -path "*google-chrome*" ! -path "*cache*" ! -path "*dropbox*" -mmin -1 -type f -ls  
7735309   12 -rw-r--r--   1 dkb    dkb       10948 Oct 29 10:56 /home/dkb/.config/Mousepad/accels.scm  
7734498    4 -rw-rw-r--   1 dkb    dkb        1397 Oct 29 10:56 /home/dkb/.config/Mousepad/mousepadrc  
7209188  240 -rw-------   1 dkb    dkb      242407 Oct 29 10:56 /home/dkb/.local/share/recently-used.xbel  
$ 

(Последний удар в основном бесполезен.)

Д. К. Бозе
источник
1

Где хранится информация меню настроек, зависит от некоторых пунктов. Такие вещи , как фон рабочего стола, темы, язык и сочетание клавиш (включая свой ) - та , все идут в dconf схему, в то время как такие вещи , как настройки отображения и настройки сетей должны взаимодействовать с xrandrи network-managerпрограммами соответственно.

Например, в меню настроек у меня есть собственный ярлык PAGE-DOWN. Если я сделаю dconf dump / | grep -C 5 PAGEдостаточно, я увижу следующую запись:

[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7]
binding='<Alt>period'
command='bash -c "xdotool getactivewindow key Page_Down"'
name='PAGE-DOWN'

То же самое для настроек питания, это в dconf:

[org/gnome/settings-daemon/plugins/power]
idle-dim=false
lid-close-battery-action='nothing'
lid-close-ac-action='nothing'

тема:

$ dconf dump / | grep  theme                                       
cursor-theme='crystalblue_classic'
icon-theme='Deepin-2013'
gtk-theme='Numix'
theme='Numix'

Что касается позиционирования экрана, вы можете сделать это через Настройки -> Показать меню или использовать xrandr, например, что-то вроде

xrandr --output VGA1 --auto --output HDMI1 --auto --right-of VGA1

(Пример из Arch Wiki)

Еще более ручным способом является изменение .config/monitors.xmlфайла, что и xrandrделает.

Но прежде всего они управляют, gnome-settings-daemonесли у вас есть оболочка Gnome или unity-settings-daemonUnity (рабочий стол по умолчанию). Зная , что я использовал dconf, gconfи xrandrв многочисленных сценариев на этом сайте для настройки рабочего стола функциональность, и используется gnome-settings-daemonдля упрощения поведения openboxсреды. Ниже приведены некоторые примеры,

Назначить язык клавиатуры по умолчанию для каждого приложения (использует gsettings)

Как навсегда установить разрешение моего второго экрана? (использует xrandr)

Сергей Колодяжный
источник