Демоны в Linux. Как посмотреть все запущенные сервисы?

демоны в linux. как посмотреть все запущенные сервисы?

Что такое демоны и сервисы

Демонами в Linux называют специальные программы, не требующие для выполнения явного вызова через терминал или графическую оболочку. Как правило, они запускаются ядром операционной системы самостоятельно. Тем не менее, пользователь может управлять демонами с помощью ряда инструментов.

Linux автоматически создает несколько важных демонов, которые, по сути, не являются самостоятельными программами, а существуют как потоки ядра операционной системы. Они выполняют ряд административных задач: управление вводом/выводом, буфером блочных устройств, контроль системных прерываний и т.д. Пользователю не следует вмешиваться в работу таких демонов, так как это может повлечь за собой необратимые последствия. Например, потерю данных.

Помимо потоков ядра существует масса демонов, занимающихся более высокоуровневыми задачами. Их чаще всего называют сервисами. Linux реализует ряд специальных команд для удобного взаимодействия пользователей и сервисов. Нужно отметить, что потоки ядра не имеют таких интерфейсов. Это сделано для предотвращения случайного вмешательства в работу операционной системы.

Краткий список возможных сервисов:

Имя Описание
apaсhe2 Веб-сервер apache
nginx Веб-сервер nginx
сron Менеджер запуска программ по расписанию
dhclient DHCP-клиент
mysqld Сервер базы данных MySQL
sshd Сервер подключения через SSH
udevd Управление устройствами
bluetoothd Управление Bluetooth соединениями
sendmail Почтовый сервер

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

Просмотр запущенных сервисов

Разделение терминов демон и сервис имеет под собой практический смысл. Все демоны, размещающие свои инициализационные скрипты в директории /etc/init.d, предоставляют пользователю интерфейс управления своим состоянием. Именно такие программы принято называть сервисами, так как взаимодействие с ними происходит через системную команду /sbin/service или просто service (в зависимости от дистрибутива).

Для вывода списка всех запущенных сервисов и просмотра их статусов нужно использовать команду service с опцией --status-all.

service --status-all
[ + ] acpid
[ - ] alsa-utils
[ - ] anacron
[ - ] apparmor
[ + ] apport
[ + ] avahi-daemon
[ + ] binfmt-support
[ + ] bluetooth
[ - ] bootmisc.sh
[ - ] brltty
[ - ] cgroupfs-mount
[ - ] checkfs.sh
[ - ] checkroot-bootclean.sh
[ - ] checkroot.sh
...

Последние публикации