| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
| linux:administration:configuration_files [2022/08/04 10:01] – [3.2. Конфигурационные файлы, соответствующие стандарту XDG] so_v_a | linux:administration:configuration_files [2026/08/13 17:37] (текущий) – so_v_a |
|---|
| | <!DOCTYPE markdown> |
| | |
| # Конфигурационные файлы Linux | # Конфигурационные файлы Linux |
| |
| https://habr.com/ru/company/first/blog/648793/ | Конфигурация системы ОС Linux осуществляется по сути лишь путём редактирования текстовых файлов в различных системных папках. |
| | |
| | Ниже представлено где файлы конфигурации расположены и каковы их функции. Благодаря стандарту иерархии файловой системы (Filesystem Hierarchy Standard) данные папки и файлы сохраняют своё расположение даже в разных дистрибутивах. |
| ## 2. Глобальные файлы конфигурации | ## 2. Глобальные файлы конфигурации |
| |
| Как правило, они располагаются в корневом разделе диска (/), а доступ к ним требует прав суперпользователя. | Как правило, они располагаются в корневом разделе диска (/), а доступ к ним требует прав суперпользователя. |
| |
| Справедливости ради, стоит заметить, что согласно стандарту FHS конфигурационные файлы не хранятся в корневой директории, она пустая и содержит в себе только папки. | > Стоит заметить, что согласно стандарту FHS конфигурационные файлы не хранятся в корневой директории, она пустая и содержит в себе только папки. |
| |
| ### 2.1. /etc/ | ### 2.1. /etc/ |
| Исторически конфигурационные файлы в папке /etc/default/ содержали настройки сервисов/программ-демонов для их использования с системами инициализации, например upstart. Однако с появлением systemd эта папка стала использоваться в основном для настроек приложений пользовательского пространства. | Исторически конфигурационные файлы в папке /etc/default/ содержали настройки сервисов/программ-демонов для их использования с системами инициализации, например upstart. Однако с появлением systemd эта папка стала использоваться в основном для настроек приложений пользовательского пространства. |
| |
| **Система не перезаписывает файлы в папке /etc/default/**. А значит, как только мы настроили там поведение приложений, оно не изменится при обновлении системы. | > **Система не перезаписывает файлы в папке /etc/default/**. А значит, как только мы настроили там поведение приложений, оно не изменится при обновлении системы. |
| |
| |
| Эти файлы, как правило, расположены в домашней папке пользователя и не требуют прав суперпользователя для редактирования. | Эти файлы, как правило, расположены в домашней папке пользователя и не требуют прав суперпользователя для редактирования. |
| |
| Следует иметь в виду, что пользовательские настройки всегда имеют более высокий приоритет, чем глобальные. Иными словами, **приложение всегда будет придерживаться пользовательских настроек, если таковые есть**. | > Следует иметь в виду, что пользовательские настройки всегда имеют более высокий приоритет, чем глобальные. Иными словами, **приложение всегда будет придерживаться пользовательских настроек, если таковые есть**. |
| |
| В части пользовательских настроек приложения соответствуют одному из двух стандартов. | В части пользовательских настроек приложения соответствуют одному из двух стандартов. |
| Внутри `$XDG_CONFIG_HOME` каждое приложение создаёт свои подпапки для конфигурационных файлов. | Внутри `$XDG_CONFIG_HOME` каждое приложение создаёт свои подпапки для конфигурационных файлов. |
| |
| Базовой спецификации каталогов XDG теперь придерживаются редактор NeoVim и многие активно развивающиеся приложения. Для пользователей стандарт тоже удобен: одной резервной копии папки `$XDG_CONFIG_HOME` достаточно, чтобы сохранить все настройки. | Базовой спецификации каталогов XDG теперь придерживаются многие активно развивающиеся приложения. Для пользователей стандарт тоже удобен: одной резервной копии папки `$XDG_CONFIG_HOME` достаточно, чтобы сохранить все настройки. |
| |
| ### 3.3. Важные файлы пользовательской конфигурации | ### 3.3. Важные файлы пользовательской конфигурации |
| Среди наиболее часто используемых файлов пользовательской конфигурации следует перечислить: | Среди наиболее часто используемых файлов пользовательской конфигурации следует перечислить: |
| |
| $HOME/.xinitrc — в нём содержатся указания о запуске менеджера окон при работе с командой startx; | * $HOME/.xinitrc — в нём содержатся указания о запуске менеджера окон при работе с командой **startx**; |
| $HOME/.vimrc — конфигурация vim; | * $HOME/.vimrc — конфигурация vim; |
| $HOME/.bashrc — скрипт, который выполняет командная оболочка bash, когда пользователь запускает командную оболочку без регистрации; | * $HOME/.bashrc — скрипт, который выполняет командная оболочка bash, когда пользователь запускает командную оболочку без регистрации; |
| $XDG_CONFIG_HOME/nvim/init.vim — конфигурация редактора neovim; | * `$XDG_CONFIG_HOME/nvim/init.vim` — конфигурация редактора neovim; |
| $HOME/.editor — задаёт редактор по умолчанию для данного пользователя; | * $HOME/.editor — задаёт редактор по умолчанию для данного пользователя; |
| $HOME/.gitconfig — в файле указывается имя по умолчанию и адрес электронной почты для указания в коммитах Git; | * $HOME/.gitconfig — в файле указывается имя по умолчанию и адрес электронной почты для указания в коммитах Git; |
| $HOME/.profile — командная оболочка с регистрацией выполняет команды из скрипта .profile при запуске; | * $HOME/.profile — командная оболочка с регистрацией выполняет команды из скрипта .profile при запуске; |
| $HOME/.ssh/config — конфигурация ssh для конкретного пользователя. | * $HOME/.ssh/config — конфигурация **ssh** для конкретного пользователя. |