Инструменты пользователя

Инструменты сайта


linux:administration:configuration_files

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
linux:administration:configuration_files [2022/08/04 09:20] – создано so_v_alinux:administration:configuration_files [2026/08/13 17:37] (текущий) – so_v_a
Строка 1: Строка 1:
 +<!DOCTYPE markdown>
 +
 # Конфигурационные файлы Linux # Конфигурационные файлы Linux
  
-https://habr.com/ru/company/first/blog/648793/+Конфигурация системы ОС Linux осуществляется по сути лишь путём редактирования текстовых файлов в различных системных папках.
  
-## Важные глобальные файлы конфигурации+Ниже представлено где файлы конфигурации расположены и каковы их функции. Благодаря стандарту иерархии файловой системы (Filesystem Hierarchy Standard) данные папки и файлы сохраняют своё расположение даже в разных дистрибутивах. 
 + 
 +## 2. Глобальные файлы конфигурации 
 + 
 +**Глобальные файлы конфигурации определяют поведение системы в целом**. 
 + 
 +Как правило, они располагаются в корневом разделе диска (/), а доступ к ним требует прав суперпользователя. 
 + 
 +> Стоит заметить, что согласно стандарту FHS конфигурационные файлы не хранятся в корневой директории, она пустая и содержит в себе только папки. 
 + 
 +### 2.1. /etc/ 
 + 
 +**Большинство глобальных файлов конфигурации хранится в папке /etc.** 
 + 
 +Папка /etc/ больше походит на файловую систему с множеством подпапок, в которых размещены соответствующие конфигурационные файлы. 
 + 
 +Ниже приведён список наиболее полезных подпапок: 
 + 
 +  * /etc/X11/ — конфигурационные файлы **xorg**; 
 +  * /etc/cups/ — подпапка с конфигурационными данными сервера печати **CUPS** (Common UNIX Printing System); 
 +  * /etc/xdg/ — глобальные файлы конфигурации для приложений, придерживающихся стандартов freedesktop.org; 
 +  * /etc/ssh/ — используется для конфигурации поведения сервера **OpenSSH** для всей системы; 
 +  * /etc/apparmor.d/ — содержит конфигурационные файлы для системы AppArmor; 
 +  * /etc/udev/ — настройки, относящиеся к **udev**. 
 + 
 +### 2.2. /etc/opt/ 
 + 
 +Папка /etc/opt/ должна содержать глобальные файлы конфигурации приложений, установленных в /opt/. Однако в Linux это требование не является обязательным. В результате бывает, что папка /opt/ полна установленных пользователем программ, а /etc/opt/ остаётся пустой. 
 + 
 +### 2.3. /etc/default/ 
 + 
 +Исторически конфигурационные файлы в папке /etc/default/ содержали настройки сервисов/программ-демонов для их использования с системами инициализации, например upstart. Однако с появлением systemd эта папка стала использоваться в основном для настроек приложений пользовательского пространства. 
 + 
 +> **Система не перезаписывает файлы в папке /etc/default/**. А значит, как только мы настроили там поведение приложений, оно не изменится при обновлении системы. 
 + 
 + 
 +### 2.4. Важные глобальные файлы конфигурации
  
 Вот несколько наиболее полезных глобальных файлов конфигурации: Вот несколько наиболее полезных глобальных файлов конфигурации:
  
-/etc/resolv.conf — в нём определяется, какой (какие) DNS-сервер(ы) использует система; +  * /etc/resolv.conf — в нём определяется, какой (какие) DNS-сервер(ы) использует система; 
-/etc/bash.bashrc — в нём задают команды для выполнения в момент запуска командной оболочки bash; +  * /etc/bash.bashrc — в нём задают команды для выполнения в момент запуска командной оболочки **bash**; 
-/etc/profile — интерактивная командная оболочка выполняет команды скрипта .profile при запуске; +  * /etc/profile — интерактивная командная оболочка выполняет команды скрипта .profile при запуске; 
-/etc/dhcp/dhclient.conf — там хранятся сетевые данные, которые запрашивают DHCP-клиенты; +  * /etc/dhcp/dhclient.conf — там хранятся сетевые данные, которые запрашивают **DHCP-клиенты**; 
-/etc/fstab — определяет, где будут смонтированы все доступные системе разделы диска; +  * /etc/fstab — определяет, где будут смонтированы все доступные системе разделы диска; 
-/etc/hostname — задаёт имя хоста для машины; +  * /etc/hostname — задаёт имя хоста для машины; 
-/etc/hosts — файл, соединяющий IP-адреса с именами хостов; +  * /etc/hosts — файл, соединяющий IP-адреса с именами хостов; 
-/etc/hosts.deny — перечисленные в этом файле удалённые хосты лишены доступа к машине; +  * /etc/hosts.deny — перечисленные в этом файле удалённые хосты лишены доступа к машине; 
-/etc/mime.types — содержит MIME-типы данных и соответствующие им расширения файлов; +  * /etc/mime.types — содержит **MIME-типы** данных и соответствующие им расширения файлов; 
-/etc/motd — файл с текстом сообщения, которое выводится при входе пользователя в систему; +  * /etc/motd — файл с текстом сообщения, которое выводится при входе пользователя в систему; 
-/etc/timezone — задаёт часовой пояс; +  * /etc/timezone — задаёт часовой пояс; 
-/etc/sudoers — файл sudoers контролирует привилегии, относящиеся к команде sudo; +  * /etc/sudoers — файл sudoers контролирует привилегии, относящиеся к команде **sudo**; 
-/etc/httpd/conf и /etc/httpd.conf.d — конфигурация веб-сервера Apache; +  * /etc/httpd/conf и /etc/httpd.conf.d — конфигурация веб-сервера Apache; 
-/etc/default/grub — содержит конфигурацию, которую использует команда update-grub для создания файла /boot/grub/grub.cfg; +  * /etc/default/grub — содержит конфигурацию, которую использует команда **update-grub** для создания файла /boot/grub/grub.cfg; 
-/boot/grub/grub.cfg — команда update-grub генерирует этот файл автоматически в соответствии с настройками, заданными в файле /etc/default/grub.+  * /boot/grub/grub.cfg — команда update-grub генерирует этот файл автоматически в соответствии с настройками, заданными в файле /etc/default/grub. 
 + 
 +## 3. Пользовательская конфигурация 
 + 
 +**Файлы пользовательской конфигурации определяют поведение системы только для задающего настройки пользователя**. 
 + 
 +Эти файлы, как правило, расположены в домашней папке пользователя и не требуют прав суперпользователя для редактирования. 
 + 
 +> Следует иметь в виду, что пользовательские настройки всегда имеют более высокий приоритет, чем глобальные. Иными словами, **приложение всегда будет придерживаться пользовательских настроек, если таковые есть**. 
 + 
 +В части пользовательских настроек приложения соответствуют одному из двух стандартов. 
 + 
 +### 3.1. Традиционные файлы конфигурации 
 + 
 +Как правило, если у приложения всего один файл конфигурации, его можно найти так: 
 +``` 
 +/home/(username)/.(app_name{rc}) 
 +``` 
 +Но если конфигурационных файлов больше, то они хранятся в папке 
 +``` 
 +/home/(username)/.(app_name) 
 +``` 
 + 
 + 
 +### 3.2. Конфигурационные файлы, соответствующие стандарту XDG 
 + 
 +Разработчики freedesktop.org решили, что старая система недостаточно упорядочена, и выработали базовую спецификацию каталогов XDG. 
 + 
 +По стандарту XDG **все файлы пользовательской конфигурации хранятся в папке** 
 +``` 
 +$XDG_CONFIG_HOME 
 +``` 
 +(обычно в `/home/(username)/.config/`). 
 + 
 +Внутри `$XDG_CONFIG_HOME` каждое приложение создаёт свои подпапки для конфигурационных файлов. 
 + 
 +Базовой спецификации каталогов XDG теперь придерживаются многие активно развивающиеся приложения. Для пользователей стандарт тоже удобен: одной резервной копии папки `$XDG_CONFIG_HOME`  достаточно, чтобы сохранить все настройки. 
 + 
 +### 3.3. Важные файлы пользовательской конфигурации 
 + 
 +Среди наиболее часто используемых файлов пользовательской конфигурации следует перечислить: 
 + 
 +  * $HOME/.xinitrc — в нём содержатся указания о запуске менеджера окон при работе с командой **startx**; 
 +  * $HOME/.vimrc — конфигурация vim; 
 +  * $HOME/.bashrc — скрипт, который выполняет командная оболочка bash, когда пользователь запускает командную оболочку без регистрации; 
 +  * `$XDG_CONFIG_HOME/nvim/init.vim` — конфигурация редактора neovim; 
 +  * $HOME/.editor — задаёт редактор по умолчанию для данного пользователя; 
 +  * $HOME/.gitconfig — в файле указывается имя по умолчанию и адрес электронной почты для указания в коммитах Git; 
 +  * $HOME/.profile — командная оболочка с регистрацией выполняет команды из скрипта .profile при запуске; 
 +  * $HOME/.ssh/config — конфигурация **ssh** для конкретного пользователя.
/var/www/html/dokuwiki/data/attic/linux/administration/configuration_files.1659604843.txt.gz · Последнее изменение: (внешнее изменение)