Содержание статьи

Папка /etc на системах Linux и Unix содержит ключевые конфигурационные файлы, управляющие поведением операционной системы и установленных сервисов. Здесь сосредоточены настройки ядра, сетевых интерфейсов, учетных записей пользователей и параметров демонов.
Внутри /etc можно найти файлы passwd и group, отвечающие за учетные записи пользователей и групп, а также fstab, где указаны точки монтирования файловых систем. Настройки сети обычно хранятся в файлах hosts, resolv.conf и директориях, таких как network или sysconfig.
Папка /etc также включает конфигурации приложений и системных служб, например ssh/sshd_config для SSH, nginx/nginx.conf для веб-сервера и cron.d для планировщика задач. Каждое изменение этих файлов напрямую влияет на работу системы, поэтому рекомендуется делать резервные копии перед редактированием.
Файлы в /etc структурированы по назначению: ядро, сеть, безопасность, службы и приложения. Это позволяет быстро находить нужные конфигурации и управлять системой без необходимости искать настройки в разных местах.
Конфигурационные файлы системных служб
В папке /etc хранятся файлы, управляющие поведением системных служб. Они определяют, как запускаются демоны, какие параметры используют и как взаимодействуют с другими компонентами системы.
Ключевые файлы и директории включают:
- /etc/systemd/system/ – юниты и настройки служб для systemd, включая параметры автозапуска.
- /etc/init.d/ – скрипты запуска традиционных SysV-демонов, содержащие команды start, stop, restart.
- /etc/rc*.d/ – символические ссылки на скрипты для разных уровней запуска системы.
- /etc/cron.d/ – задания планировщика cron для автоматического выполнения задач.
Настройки отдельных служб часто располагаются в отдельных поддиректориях, например:
- /etc/ssh/sshd_config – параметры работы SSH-сервера, включая порт, аутентификацию и ограничения доступа.
- /etc/nginx/nginx.conf – конфигурация веб-сервера, определяющая обработку запросов и виртуальные хосты.
- /etc/mysql/my.cnf – настройки базы данных MySQL, включая пути к данным и параметры кеширования.
Рекомендуется перед изменением этих файлов создавать резервные копии и проверять синтаксис командой systemctl daemon-reload или аналогичными средствами для конкретного сервиса. Это предотвращает ошибки запуска служб и сбои системы.
Настройки сетевых интерфейсов и соединений

Файлы в /etc, отвечающие за сетевые интерфейсы, позволяют задать адресацию, маршруты и параметры подключения для различных устройств. Основные файлы включают:
/etc/network/interfaces – используется в Debian-подобных системах для конфигурации Ethernet и Wi-Fi интерфейсов. Здесь задаются IP-адрес, маска сети, шлюз и дополнительные параметры:
Пример записи:
auto eth0 iface eth0 inet static address 192.168.1.10 netmask 255.255.255.0 gateway 192.168.1.1
/etc/resolv.conf содержит настройки DNS-серверов. Для корректного разрешения доменных имен необходимо указывать несколько серверов и проверять их доступность.
/etc/hosts связывает IP-адреса с именами хостов. Используется для локального разрешения имен без обращения к DNS.
В системах Red Hat и CentOS конфигурации сетевых интерфейсов хранятся в /etc/sysconfig/network-scripts/ifcfg-*, где каждый интерфейс представлен отдельным файлом. Важно проверять правильность параметров BOOTPROTO, ONBOOT и IPADDR для корректного запуска сети.
Для применения изменений после редактирования конфигураций рекомендуется использовать команды systemctl restart network или nmcli connection reload, в зависимости от используемой системы и менеджера сети.
Файлы пользователей и групп

В папке /etc хранятся файлы, которые управляют учетными записями пользователей и групп. Основные из них:
/etc/passwd – содержит информацию о пользователях: имя, идентификатор UID, домашний каталог и оболочку по умолчанию. Каждая запись разделена двоеточиями:
имя_пользователя:x:UID:GID:Комментарий:Домашний_каталог:Оболочка
/etc/shadow хранит зашифрованные пароли пользователей и параметры их действия, такие как срок действия и требование смены пароля.
/etc/group содержит группы пользователей, идентификаторы GID и список участников. Пример записи:
имя_группы:x:GID:пользователь1,пользователь2
Редактирование этих файлов следует выполнять с помощью команд vipw и vigr, чтобы избежать повреждения структуры и нарушений прав доступа. Это обеспечивает безопасное управление учетными записями и группами.
Параметры загрузки и ядра системы

В /etc находятся файлы, определяющие поведение ядра и порядок загрузки системы. Основные из них:
/etc/fstab – описывает точки монтирования файловых систем, включая устройства, точки монтирования, тип файловой системы и параметры монтирования. Пример записи:
/dev/sda1 / ext4 defaults 0 1 /dev/sdb1 /data ext4 noatime 0 2
/etc/default/grub содержит параметры загрузчика GRUB. Здесь задаются таймаут, ядро по умолчанию и дополнительные параметры командной строки ядра. После изменения файла нужно выполнить update-grub для применения настроек.
/etc/modprobe.d/ – директория с конфигурациями модулей ядра, где можно отключать загрузку отдельных модулей или задавать параметры для них. Файлы имеют формат имя.conf с ключами options и blacklist.
Изменения в этих файлах влияют на стабильность системы, порядок монтирования и функциональность оборудования. Перед редактированием рекомендуется создавать резервные копии и проверять синтаксис командой grub-mkconfig или mount -a.
Конфигурации приложений и демонов
В папке /etc хранятся настройки приложений и демонов, которые определяют их поведение и параметры запуска. Обычно каждая служба имеет отдельную поддиректорию или конфигурационный файл.
Примеры конфигураций:
| Сервис | Файл/Директория | Назначение |
|---|---|---|
| SSH | /etc/ssh/sshd_config | Настройки доступа, порт, методы аутентификации, ограничения пользователей |
| Nginx | /etc/nginx/nginx.conf | Конфигурация веб-сервера, виртуальные хосты, обработка запросов |
| MySQL | /etc/mysql/my.cnf | Параметры работы базы данных, пути к данным, кеширование, сетевые настройки |
| Cron | /etc/cron.d/ | Автоматические задачи и расписания для системных и пользовательских скриптов |
| Systemd | /etc/systemd/system/ | Юниты служб, параметры автозапуска, зависимости между сервисами |
Перед изменением конфигураций рекомендуется создавать резервные копии и проверять синтаксис командой, соответствующей конкретному демону, чтобы избежать сбоев в работе служб.
Файлы планировщика задач и cron

В папке /etc находятся файлы, управляющие автоматическим выполнением задач с помощью планировщика cron. Они определяют расписание запуска системных и пользовательских скриптов.
/etc/crontab – основной файл планировщика, содержащий системные задания. Формат записи включает пять полей времени, пользователя и команду:
* * * * * пользователь команда
/etc/cron.d/ – директория для отдельных файлов с заданиями, которые могут быть добавлены пакетами программ. Структура файлов аналогична /etc/crontab, но позволяет разделять задачи по сервисам.
/etc/cron.daily/, /etc/cron.hourly/, /etc/cron.weekly/, /etc/cron.monthly/ – каталоги для скриптов, выполняемых с заданной периодичностью. Любой скрипт, помещённый в эти папки, будет запускаться автоматически по расписанию.
При работе с файлами cron важно проверять права доступа и корректность синтаксиса, используя команду crontab -l для просмотра текущих заданий. Неправильные записи могут привести к пропуску выполнения задач или ошибкам системы.
Логины, пароли и ключи безопасности
В папке /etc хранятся файлы, связанные с аутентификацией пользователей и безопасностью системы. Основные файлы обеспечивают хранение учетных данных и настройку доступа.
/etc/passwd содержит информацию о пользователях, включая их идентификаторы UID и домашние каталоги, но не хранит пароли в открытом виде.
/etc/shadow хранит зашифрованные пароли, даты последней смены и ограничения использования пароля. Для защиты доступа к этому файлу используются строгие права: только root может его читать.
/etc/gshadow управляет паролями групп и доступом к ним, обеспечивая дополнительный уровень безопасности для групповых ресурсов.
/etc/ssh/ – директория с ключами SSH и настройками серверных и клиентских соединений. Файлы ssh_host_*_key содержат приватные ключи, а authorized_keys указывает разрешенные публичные ключи для доступа пользователей.
Для безопасной работы важно проверять права доступа к этим файлам и использовать команды passwd, chage и ssh-keygen для управления учетными записями и ключами. Любые изменения следует выполнять аккуратно, чтобы не нарушить доступ к системе.
Вопрос-ответ:
Какие типы файлов обычно находятся в папке /etc?
В папке /etc находятся конфигурационные файлы системы и приложений. Сюда входят настройки сетевых интерфейсов, учетных записей пользователей и групп, параметры загрузки и ядра, файлы служб и демонов, а также задания планировщика cron. Каждая служба или приложение обычно имеет отдельный конфигурационный файл или поддиректорию внутри /etc.
Как узнать, какие службы настроены через файлы в /etc?
Для systemd сервисы описаны в /etc/systemd/system/ в виде юнитов, а для SysV — в /etc/init.d/. Можно просмотреть файлы и их содержимое, чтобы определить, какие демоны и приложения запускаются, какие параметры передаются при старте и какие зависимости между службами установлены.
Где в /etc хранятся настройки сети и DNS?
В Debian-подобных системах настройки сети находятся в /etc/network/interfaces, а в Red Hat и CentOS — в /etc/sysconfig/network-scripts/ifcfg-*. Для DNS используется файл /etc/resolv.conf, где указаны адреса серверов, а локальное разрешение имен настраивается через /etc/hosts.
Какие файлы отвечают за учетные записи пользователей и пароли?
/etc/passwd хранит основную информацию о пользователях, включая UID, домашний каталог и оболочку. /etc/shadow содержит зашифрованные пароли и информацию о сроках действия пароля. /etc/group и /etc/gshadow управляют группами и их паролями. Для редактирования безопаснее использовать команды vipw и vigr.
Как работать с заданиями cron через файлы в /etc?
Основной системный crontab находится в /etc/crontab и задает расписание для выполнения команд. Дополнительно задания можно размещать в /etc/cron.d/, а скрипты с периодическим выполнением — в /etc/cron.daily/, /etc/cron.hourly/, /etc/cron.weekly/ и /etc/cron.monthly/. Для проверки расписания используется команда crontab -l, а изменения следует сохранять с корректными правами доступа.
Для чего в папке /etc хранятся файлы конфигурации служб и демонов?
Файлы в /etc определяют поведение системных служб и демонов. Например, в /etc/systemd/system/ находятся юниты systemd, в /etc/init.d/ — скрипты для запуска и остановки демонов. Эти файлы задают параметры запуска, зависимости между службами и способы их перезапуска. Изменения влияют на работу системы, поэтому рекомендуется создавать резервные копии перед редактированием.
Какие файлы в /etc отвечают за учетные записи пользователей и группы?
/etc/passwd содержит информацию о пользователях: имя, UID, GID, домашний каталог и оболочку. /etc/shadow хранит зашифрованные пароли и сроки их действия. /etc/group и /etc/gshadow управляют составом групп и паролями групп. Для безопасного редактирования используют команды vipw и vigr, чтобы не нарушить структуру файлов.
