как посмотреть список сервисов в linux
Список служб Linux с помощью Systemctl
Большинство последних дистрибутивов Linux используют systemd в качестве системы инициализации и диспетчера служб по умолчанию.
Systemd — это набор инструментов для управления системами Linux. Он используется для загрузки машины, управления службами, автоматического монтирования файловых систем, регистрации событий, настройки имени хоста и других системных задач.
В этой статье объясняется, как составить список служб в Linux.
Список служб Linux
systemctl — это утилита командной строки, которая используется для управления systemd и службами. Он является частью экосистемы systemd и по умолчанию доступен во всех системах.
Чтобы получить список всех загруженных служебных единиц, введите:
Каждая строка вывода содержит следующие столбцы слева направо:
Если вы хотите увидеть все установленные файлы модулей, а не только загруженные, используйте:
Отображение статуса службы
Чтобы проверить статус службы, используйте команду systemctl status :
Где — это имя сервисной единицы, которую вы хотите проверить. Например, чтобы определить текущий статус службы nginx, вы должны запустить:
Команда напечатает следующую информацию:
Команда покажет вам статус службы. Если служба активна, команда возвращает статус выхода 0, что может быть полезно при использовании команды внутри сценариев оболочки.
Выводы
Мы показали вам, как использовать команду systemctl для systemctl списка служб Linux и проверки их статуса.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.
👦 Как перечислить службы в Linux
В этой статье я покажу вам, как составить список всех запущенных сервисов в Linux.
Мы также проверим, как проверить статус службы в системе systemd.
Давайте изучим различные команды, используемые для перечисления сервисов в Centos / RHEL 7.x.
Проверить и перечислить сервисы linux (systemd на Centos / RHEL 7.x / Ubuntu /)
Для просмотра списка системных служб запустите
Пример, кстати выполнен на системе Ubuntu 🙂
Для просмотра списка активных сервисов systemd
Другая команда, которую вы можете использовать,
Вы можете направить вывод в grep для поиска более конкретной службы, как показано ниже
Перечисление сервисов с помощью команды Netstat
Команда Nestat – это инструмент, используемый для проверки активных сетевых подключений, статистики интерфейсов, а также таблицы маршрутизации.
Он доступен во всех дистрибутивах Linux, и здесь мы проверим, как составить список сервисов с помощью команды netstat.
Чтобы проверить услуги с портами, которые они слушают:
Просмотр файла /etc/ services
Файл /etc/services представляет собой файл ASCII, который содержит информацию о многочисленных службах, которые клиентские приложения могут использовать на компьютере.
Внутри файла находится имя службы, номер порта и протокол, который он использует, и любые применимые псевдонимы.
ITO put t указывает, является ли служба TCP или UDP, и имя, которое она называет в соответствии с IANA.
Эта информация полезна, особенно если вы не уверены, какая служба работает на каком порту по умолчанию.
Чтобы получить более четкое представление, просмотрите файл /etc/services с помощью любого текстового редактора.
Проверка состояния системных служб
В более новых версиях Linux присутствует Systemd init.
Чтобы проверить, работает ли служба, используйте синтаксис ниже
Например, чтобы проверить, работает ли OpenSSH в вашей системе, запустите
Кроме того, вы можете использовать приведенный ниже синтаксис, чтобы проверить, активна ли служба
В этом случае, чтобы проверить, активен ли OpenSSH, выполните
Кроме того, вы можете использовать команду ниже, чтобы проверить, включена ли служба
Чтобы проверить, включен ли OpenSSH, запустите
Проверка статуса услуг в старых системах (Centos / Rhel 6.x / Ubuntu)
Для систем, работающих под управлением SysV Init, вы можете проверить состояние служб, запустив
Например, чтобы проверить состояние OpenSSH, запустите
Вы также можете проверить все службы, запустив
Добавить комментарий Отменить ответ
• Свежие записи
• Категории
• itsecforu.ru
• Страны посетителей
IT is good
Как вывести список системных служб в Linux
Главное меню » Linux » Как вывести список системных служб в Linux
Даже такая простая задача, как перечисление системных сервисов, может заставить вас задуматься.
В этой статье мы покажем вам, как составить список системных служб. Мы также объясним вывод, чтобы вам было легче понять различные состояния служб.
Мы предполагаем, что у вас есть некоторые знания о systemd, но даже если вы этого не сделаете, все будет хорошо.
Как вывести список активных сервисов в systemd
Сервисы systemd управляются командой systemctl. Если вы запускаете systemctl без каких-либо аргументов, он вызывает подкоманду по умолчанию list-units и перечисляет различные типы системных модулей, таких как службы, сокеты, цели и т. д.
Но ваша цель состоит в том, чтобы перечислить сервисы, чтобы вы указали тип устройства с флагом –type, например:
Вы заметили, что мы не указали подкоманду list-units, потому что она используется по умолчанию? Если вы хотите следовать соглашению, вы также можете указать это. Мы предпочитаем это таким образом, и мы буду следовать этой конвенции в оставшейся части статьи.
В обоих случаях вывод будет одинаковым. По умолчанию эта команда показывает только загруженные и активные службы в алфавитном порядке:
Позвольте нам объяснить вывод:
Как видите, вы можете перечислить загруженные сервисы в вашей системе Linux. Но активная служба systemd может быть запущена или может быть закрыта (после успешного запуска).
Список всех запущенных сервисов systemd
Активное состояние также может иметь под-статус, например, запущен, завершен и т. д. Вы можете использовать тот же флаг –state с под-состоянием.
Чтобы вывести список запущенных сервисов systemd, используйте такой флаг –state=running:
Вот пример вывода для моей системы, показывающий некоторые из запущенных сервисов systemd:
Список всех загруженных системных сервисов, включая неактивные
По умолчанию команда systemctl отображает только загруженные и активные модули.
Если вы хотите перечислить все загруженные сервисы, включая неактивные, используйте флаг –all:
Теперь вы можете увидеть даже неактивные сервисы:
Список всех неактивных сервисов systemd
Как вы можете видеть в выводе, он отображает все неактивные сервисы systemd:
Список всех установленных сервисов systemd (даже если они не загружены)
Каждый системный модуль, будь то сервис, сокет или любой другой модуль, имеет файл модуля, который
Вот что вы должны увидеть:
Объяснение каждого типа состояния будет слишком длинным и не рассматривается в этой статье.
Список всех системных сервисов, которые будут запускаться при каждой загрузке автоматически
Чтобы увидеть все службы systemd, которые будут запускаться автоматически при каждой загрузке системы, используйте эту команду:
Вы путаете с включенным состоянием? Это нормально. Многие новые пользователи путают включенную системную службу с запущенной службой.
Однако включенная служба systemd означает, что служба будет активирована автоматически при загрузке системы.
Вы замечаете предустановку поставщика? Это также присутствовало в предыдущем примере.
Предустановка поставщика определяет автоматическое поведение модуля systemd при установке программы.
Предположим, вы установили новую программу XYZ. В этом XYZ есть служба systemd под названием xyz.service с включенной предустановкой поставщика. Это означает, что после установки программы, при загрузке системы, этот xyz.service будет активирован автоматически во время загрузки.
Если предустановка поставщика отключена, вам придется вручную включить ее. Как только он включен, он запускается автоматически при каждой загрузке.
Отобразить состояние определенного сервиса systemd
До сих пор вы видели различные способы листинга услуг. Но ничто не фокусируется на одном сервисе.
Вы можете получить подробную информацию о сервисе systemd, используя подкоманду systemctl status. Завершение вкладки работает с этой командой.
Вот пример со службой сетевого менеджера:
Если вы хотите проверить, активен ли сервис в сценарии оболочки, вы можете использовать подкоманду is-active. Выход для активного.
Аналогично, если вы хотите проверить, включена ли служба (настроена ли она на автоматический запуск во время загрузки), вы можете использовать подкоманду is-enabled. Выход для включенного сервиса.
Вывод
Мы думаем, что теперь у вас есть лучшее понимание перечисления сервисов systemd. Мы надеемся, что вы узнали немного нового о командах systemd и systemctl.
Не стесняйтесь оставлять свои отзывы, вопросы или предложения в разделе комментариев.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Использование Systemctl для управления службами и блоками Systemd
Published on December 1, 2020
Введение
Управление службами
Основополагающая цель системы инициализации заключается в инициализации компонентов, которые должны запускаться после загрузки ядра Linux (традиционно называются компоненты пользовательского пространства). Система инициализации также используется для управления службами и демонами для сервера и в любой момент времени работы системы. С учетом этого мы начнем с нескольких базовых операций по управлению службами.
В systemd целью большинства действий являются «модули», являющиеся ресурсами, которыми systemd знает, как управлять. Модули распределяются по категориям по типу ресурса, который они представляют, и определяются файлами, известными как файлы модулей. Тип каждого модуля можно вывести из суффикса в конце файла.
Запуск и остановка служб
Как мы уже упомянули выше, systemd будет искать файлы *.service для команд управления службами, так что команду можно легко ввести следующим образом:
Чтобы остановить работающую в данный момент службу, можно использовать команду stop :
Перезапуск и перезагрузка
Чтобы перезапустить работающую службу, можно использовать команду restart :
Если данное приложение может перезагрузить файлы конфигурации (без перезапуска), вы можете выдать команду reload для инициализации этого процесса:
Включение и отключение служб
Указанные выше команды полезны для запуска или остановки служб во время текущего сеанса. Чтобы дать команду systemd автоматически запускать службы при загрузке, их необходимо включить.
Для запуска службы во время загрузки используйте команду enable :
Чтобы отключить автоматический запуск службы, можно ввести следующее:
При этом будет удалена символическая ссылка, что укажет на то, что служба не должна запускаться автоматически.
Проверка статуса служб
Чтобы проверить статус службы в вашей системе, можно использовать команду status :
При этом вы получите статус службы, иерархию контрольных групп и первые несколько строк журнала.
Например, при проверке статуса сервера Nginx вы можете видеть следующий вывод:
Это дает вам хороший обзор текущего статуса приложения и уведомляет о наличии каких-либо проблем или необходимости выполнения каких-либо действий.
Также есть методы для проверки определенных статусов. Например, чтобы проверить, активен ли (работает ли) модуль в данный момент, можно использовать команду is-active :
Чтобы увидеть, включен ли модуль, можно использовать команду is-enabled :
Третья проверка заключается в проверке того, находится ли модуль в состоянии сбоя. Это означает, что была проблема, которая запустила данный модуль:
Обзор состояния системы
Список текущих модулей
Это покажет вам список всех модулей, которые у systemd активны в системе. Результат будет выглядеть примерно так:
Вывод содержит следующие столбцы:
Поскольку команда list-units показывает по умолчанию только активные модули, для всех вводов выше отобразится loaded в столбце LOAD и active в столбце ACTIVE. Это отображение фактически является поведением по умолчанию systemctl при вызове без дополнительных команд, поэтому вы увидите то же, что и при вызове systemctl без аргументов:
Это отобразит все модули, которые загрузила или пыталась загрузить система systemd независимо от текущего состояния системы. Некоторые модули становятся неактивными после работы, а некоторые модули, которые система systemd пыталась загрузить, могут не быть найдены на диске.
Список все файлов модулей
Управление модулями
Отображение файла модуля
Отображение зависимостей
Чтобы увидеть дерево зависимостей модуля, можно использовать команду list-dependencies :
При этом отобразится иерархическая схема зависимостей, с которой необходимо работать, чтобы запустить интересуемый модуль. Зависимости в этом контексте включают те модули, которые либо требуются, либо желательны для модулей выше.
Проверка свойств модуля
Маскировка и снятие маскировки модулей
Это не позволит запустить службу Nginx автоматически или вручную, пока она замаскирована.
Если вы попытаетесь запустить службу, вы увидите следующее сообщение:
Чтобы снять маскировку модуля и сделать его доступным для использования снова, используйте команду unmask :
Это вернет модуль в его предыдущее состояние, что позволит его запускать или включать.
Редактирование файлов модулей
Хотя конкретный формат файлов модулей выходит за рамки этого руководства, systemctl предоставляет встроенные механизмы для редактирования и модификации файлов модулей при необходимости изменений. Эта функция добавлена в версию systemd 218.
Команда edit по умолчанию откроет фрагмент файла модуля для интересующего модуля:
Чтобы удалить весь отредактированный файл модуля, добавим:
Настройка состояния системы (уровень запуска) с помощью целей
Их можно использовать, чтобы привести систему в определенные состояния, подобно тому, как другие системы инициализации используют уровни запуска. Они используются в качестве справки, когда доступны определенные функции, позволяя вам указывать желаемое состояние вместо необходимости использования отдельных модулей для получения этого состояния.
Получение и настройка цели по умолчанию
Процесс systemd имеет цель по умолчанию, которую он использует при загрузке системы. Удовлетворение каскада зависимостей от этой одной цели приведет систему в желаемое состояние. Чтобы найти цель по умолчанию для вашей системы, введите:
Список доступных целей
Вы можете получить список имеющихся целей в вашей системе, введя:
В отличие от уровней запуска, несколько целей могут быть активны одновременно. Активная цель указывает, что система systemd попыталась запустить все модули, привязанные к цели, и не попыталась закрыть их снова. Чтобы увидеть все активные цели, введите:
Изолирование целей
Возможно, вы захотите посмотреть на зависимости цели, которую вы изолируете, перед выполнением этой процедуры, чтобы убедиться, что не остановлены важные службы:
Если вы удовлетворены модулями, которые будут сохранены в активном состоянии, можно изолировать цель, введя:
Использование комбинации быстрого ввода для важных событий
Для таких важных событий, как отключение или перезагрузка, определены цели. Однако для systemctl также есть несколько комбинаций быстрого ввода, обеспечивающих дополнительную функциональность.
Например, чтобы перевести систему в режим спасения (один пользователь), можно использовать команду rescue вместо isolate rescue.target :
Это обеспечит дополнительную функцию предупреждения всех подключенных пользователей о событии.
Чтобы остановить систему, можно использовать команду halt :
Для инициализации полного отключения можно использовать команду poweroff :
Перезапуск можно начать с помощью команды reboot :
Например, для перезагрузки системы обычно можно ввести следующее:
Заключение
🗂️ Как вывести список всех запущенных служб на Systemd в Linux
Системы Linux предоставляют разнообразные системные службы (такие как process management, login, syslog, cron и т. д.) и сетевые службы (такие как удаленный вход в систему, электронная почта, принтеры, веб-хостинг, хранение данных, передача файлов, доменное имя разрешение (с использованием DNS), динамическое назначение IP-адресов (с использованием DHCP) и многое другое).
Технически, сервис – это процесс или группа процессов (обычно называемых демонами), непрерывно работающих в фоновом режиме, ожидающих поступления запросов (особенно от клиентов).
Linux поддерживает различные способы управления (запуск, остановка, перезапуск, включение автозапуска при загрузке системы и т. д.), обычно через менеджер процессов или служб.
В большинстве, если не во всех современных дистрибутивах Linux, используется один и тот же диспетчер процессов: systemd.
Systemd – менеджер системы и сервисов Linux; замена init, которая совместима со скриптами инициализации SysV и LSB, а команда systemctl является основным инструментом для управления systemd.
В этом руководстве мы покажем, как составить список всех запущенных служб в systemd на Linux.
Список запущенных сервисов под SystemD в Linux
Когда вы запускаете команду systemctl без каких-либо аргументов, она отображает список всех загруженных модулей systemd (см. документацию по systemd для получения дополнительной информации о модулях systemd), включая службы, показывая их состояние (независимо от того, актив на оно или нет).