Что такое демон?
Этот странный термин – пережиток истории Unix, но демоны все еще используются. Этот термин является синонимом концепции «службы», задачи, которая выполняется непрерывно, обычно без взаимодействия с пользователем.
Существует несколько распространенных примеров демонов, и даже если вам не нужно точно знать, как они работают, по крайней мере полезно иметь возможность их идентифицировать.
Что такое демон?
Демон или Disk And Execution MONitor – это программа, которая работает в фоновом режиме, а не в интерактивном режиме. Демоны распространены среди сетевых инструментов и задач системного администрирования. Вы можете управлять некоторыми демонами, посылая им сигналы.
Как произносится «демон»?
Несмотря на внешность, слово демон обычно произносится так же, как слово «демон». Будьте уверены, это не имеет ничего общего с сатанинскими ритуалами. Фактически, название в конечном итоге происходит из греческой мифологии и концепции руководящего духа, неустанно работающего на заднем плане. В этом смысле очень удачное имя!
Как работают демоны?
В системах Unix термин «демон» часто используется как синоним термина «фоновый процесс». Другими словами, это процесс, который был отключен от любой оболочки и продолжает работать в неинтерактивном режиме. Настоящий демон также должен назначить себя дочерним по отношению к специальному процессу инициализации, имеющему идентификатор специального процесса 1.
Другие типичные задачи, связанные с изоляцией демона, включают:
- Песочница путем удаления ненужных переменных из своего окружения.
- Установка корневого каталога (/) в качестве текущего рабочего каталога процесса.
- Перенаправление описаний файлов для ввода, вывода и ошибок в файлы журнала или / dev / null .
Другие системы, такие как Windows и macOS, также используют демонов. В случае Windows службы являются ближайшим эквивалентом.
Какие бывают общие демоны?
Cron ( crond ) – это демон, который выполняет другие программы по расписанию. Большинство систем Unix настраивают его для автоматического запуска при запуске. Он просыпается раз в минуту, проверяет файлы конфигурации и выполняет все команды, которые должны выполняться в течение этой минуты. Cron достаточно умен, чтобы реагировать на изменения в файлах crontab, когда они меняются. Самостоятельно перезагружать не нужно.
Веб-серверы, такие как httpd Apache, часто работают как демоны – это то, что означает буква «d». Демон Apache обрабатывает входящие запросы, создавая пул дочерних процессов для распределения нагрузки. Вы можете использовать вспомогательную программу, такую как apachectl , для облегчения управления самим демоном httpd.
Наконец, sshd – еще один распространенный пример демона, на этот раз он обрабатывает SSH-соединения. Опять же, он обычно начинается с загрузки и продолжает работать бесконечно, полагаясь на сигналы для определенных операций. Например, сигнал SIGHUP вызывает повторное выполнение sshd, при этом перезагружая свой файл конфигурации.
Демоны – жизненно важные поставщики услуг
Демоны работают непрерывно, выполняя жизненно важные задачи, чтобы ваш компьютер продолжал работать. Они часто задействованы, когда компьютер должен действовать как сервер, действуя от имени других клиентов.
Демоны – жизненно важный компонент сервера Linux. Если вы новичок в настройке сервера, ознакомьтесь с нашими советами по началу работы.