В операционной системе Linux службы (или сервисы) играют ключевую роль в функционировании системы. Они отвечают за выполнение фона различных задач, таких как управление сетью, обслуживание пользователей, обработка запросов и многие другие функции. Важно уметь отслеживать и управлять этими службами, чтобы поддерживать систему в рабочем состоянии.
Одним из важнейших инструментов для работы с сервисами в Linux является утилита systemctl, которая используется для управления сервисами в системе, работающей с systemd — системой инициализации и управления службами. В этой статье мы рассмотрим, как с помощью различных команд просматривать список запущенных служб в Linux.
Ознакомиться с тарифами VPS хостинга можно тут
Что такое службы в Linux?
Службы в Linux — это фоновые процессы, которые управляют различными системными задачами, такими как:
- Сетевые службы (например, работа с интернет-соединениями, настройка сетевых интерфейсов).
- Системные службы (например, управление пользовательскими сессиями, логированием, управление файлами).
- Программные службы (например, запуск веб-серверов, баз данных).
Службы запускаются при загрузке системы и работают в фоновом режиме, обеспечивая необходимую функциональность для работы системы или приложений.
Основные инструменты для просмотра служб в Linux
Существует несколько инструментов и команд, которые позволяют просматривать и управлять службами в Linux. Рассмотрим самые популярные из них:
1. systemctl — основной инструмент для работы с службами
В современных дистрибутивах Linux, таких как Ubuntu, Debian, CentOS, Fedora и многих других, используется systemd для управления службами. Утилита systemctl позволяет:
- Просматривать список запущенных служб.
- Проверять статус служб.
- Управлять состоянием служб (запускать, останавливать, перезапускать и т.д.).
Команды для просмотра запущенных служб:
-
Показать все службы:
Чтобы увидеть список всех служб (активных и неактивных), используйте команду:
systemctl list-units --type=service
Эта команда выведет список всех юнитов типа service, где вы сможете увидеть их статус, активность и другие параметры.
-
Показать только активные службы:
Чтобы вывести только активные службы, используйте:
systemctl list-units --type=service --state=active
Команда покажет вам все службы, которые в настоящее время активно работают в вашей системе.
-
Просмотр служб с их статусом:
Если вам нужно увидеть статус конкретной службы, используйте команду:
systemctl status <имя_службы>
Например, чтобы проверить статус службы nginx, выполните:
systemctl status nginx
Команда выведет подробную информацию о текущем статусе службы, ее процессе, времени работы и другие параметры.
-
Просмотр всех установленных сервисов:
Чтобы получить список всех установленных сервисов, независимо от их состояния, можно использовать команду:
systemctl list-units --type=service --all
Это даст вам более полное представление о всех сервисах, установленных в вашей системе.
2. service — устаревший инструмент для управления службами
В более старых версиях Linux использовалась команда service, которая также предоставляет возможность просмотра и управления сервисами. Команда service является частью системы инициализации init.d, но в системах с systemd она работает как оболочка для вызова команд systemd.
-
Просмотр списка всех активных сервисов:
Для вывода списка всех активных сервисов с использованием команды service в некоторых дистрибутивах можно выполнить команду:
service --status-all
Эта команда покажет список всех доступных сервисов с их текущим состоянием (запущены или остановлены).
Как посмотреть список запущенных служб в Linux
1. Использование команды systemctl
Для более точного и подробного просмотра запущенных служб в Linux, systemctl является основным инструментом. Вот несколько наиболее полезных команд для этой цели:
-
Просмотр всех запущенных служб в системе:
Чтобы увидеть все активные и запущенные службы, можно использовать команду:
systemctl list-units --type=service --state=running
Эта команда выведет список всех запущенных служб в текущий момент. В столбце UNIT будет указано название службы, а в столбце LOAD — информация о её состоянии. -
Просмотр только загруженных служб (неактивных):
Если нужно увидеть все службы, которые загружены, но не активны, используйте:
systemctl list-units --type=service --state=inactive
-
Просмотр всех служб, включая неактивные:
Чтобы вывести полный список служб, включая как активные, так и неактивные:
systemctl list-units --type=service --all
2. Использование команды ps
Если вы хотите просмотреть не только службы, но и все процессы, работающие в системе, используйте команду ps с параметром aux:
ps aux
Эта команда выводит список всех процессов, включая фоновые службы. Вы можете применить фильтры, чтобы сузить результаты, например:
ps aux | grep service_name
Где service_name — это название службы, которую вы ищете.
3. Использование команды top
Для динамического отображения запущенных процессов в реальном времени можно использовать команду top. Эта команда позволяет увидеть все процессы, работающие в системе, в том числе и службы. Для этого достаточно просто выполнить:
top
Если вам нужно отфильтровать процессы по имени службы, используйте:
top -u <имя_пользователя>
4. Использование команды htop
Команда htop — это улучшенная версия top, которая предоставляет графический интерфейс в терминале и позволяет удобнее просматривать список процессов, включая службы. Чтобы использовать htop, просто выполните:
htop
Если htop не установлен, его можно установить с помощью:
sudo apt install htop
5. Просмотр служб на Ubuntu и Astra Linux
Для просмотра запущенных служб на Ubuntu или Astra Linux можно использовать те же команды systemctl, так как обе операционные системы используют systemd для управления службами.
-
Просмотр активных служб в Ubuntu:
systemctl list-units --type=service --state=active
-
Просмотр всех служб в Astra Linux:
systemctl list-units --type=service --all
Заключение
Управление службами и просмотр их статуса — важный аспект администрирования Linux-систем. В этой статье мы рассмотрели, как с помощью различных инструментов и команд можно просматривать список запущенных и активных служб в Linux. Наиболее удобным и современным инструментом для этого является systemctl, который предоставляет подробную информацию о статусе служб и их состоянии. Пользователи Ubuntu, Debian, Astra Linux и других систем, основанных на systemd, могут легко применять эти команды для эффективного мониторинга своих систем.