Як використовувати Systemd для переліку служб

Основні дистрибутиви Linux використовують Systemd, систему ініціалізації, яка працює на основі ввімкнення та вимкнення «службових» файлів. Якщо ви намагаєтеся перерахувати ці службові файли, але не знаєте, як це зробити, вам потрібно буде скористатися командою systemctl.

У цьому посібнику ми розглянемо різні способи переліку службових файлів Systemd у Linux. Щоб розпочати, переконайтеся, що ви використовуєте ОС Linux із Systemd. Потім відкрийте вікно терміналу та дотримуйтесь.

Використовуйте Systemd для переліку активних служб

Якщо ви часто використовуєте Systemd, у певний момент ви можете знати, які служби активні під час завантаження вашої системи Linux. Перелік активних служб дуже простий, і ви можете зробити це за допомогою команди systemctl –type=service systemctl –type=service –state=running.

Ця команда під час запуску покаже таблицю всіх служб, якщо вони активні, а також короткий опис. Щоб запустити цю програму, відкрийте вікно терміналу. Коли вікно терміналу відкриється, виконайте наведену нижче команду.

systemctl --type=service --state=running

Якщо ви намагаєтеся відфільтрувати всі активні служби для певної служби, перегляд цієї великої таблиці може бути досить втомливим. На щастя, команду systemctl можна поєднати з командою grep як механізм фільтрації.

  Як вимкнути звук усіх під час дзвінка Zoom

Наприклад, щоб перевірити, чи запущено та завантажено «snapd.service», ви можете запустити systemctl –type=service –state=running | grep ‘snapd’, а у виводі буде показано лише службу Snapd, а не всю таблицю.

systemctl --type=service --state=running | grep 'snapd'

Якщо ви хочете зберегти результат таблиці в текстовий файл для подальшого використання, скористайтеся такою командою.

systemctl --type=service --state=runningrunning > ~/active-services.txt

Щоб переглянути текстовий файл у будь-який час, виконайте наведену нижче команду cat.

cat ~/active-services.txt

Використовуйте Systemd для переліку неактивних служб

Перелік активних служб Systemd корисний, але як щодо неактивних? Так, їх теж можна перерахувати. Ось як. Спочатку відкрийте вікно терміналу.

Коли вікно терміналу відкриється і готове до використання, виконайте команду systemctl –type=service, але в слоті –state= помістіть «неактивний», а не «запущений». Зробивши це, ви можете побачити, які служби Systemd неактивні у вашій системі Linux.

systemctl --type=service --state=inactive

Як і з активними службами, Systemd створить гарну, акуратну таблицю і покаже вам, які служби Systemd неактивні, мертві та не використовуються. Якщо ви хочете відфільтрувати цю таблицю, щоб дізнатися, чи не працює певна служба, ви можете об’єднати її з командою grep.

  Як додати події Календаря Google на Карти Google

Наприклад, щоб визначити, чи є файл «updatedb.service» неактивним, ви можете об’єднати systemctl –type=service –state=inactive з командою grep нижче, щоб знайти його в таблиці.

systemctl --type=service --state=inactive | grep 'updatedb.service'

Якщо вам потрібно зберегти всі неактивні файли служби Systemd у текстовий файл для читання пізніше, скористайтеся такою командою.

systemctl --type=service --state=inactive > ~/inactive-services.txt

Щоб прочитати цей текстовий файл прямо з вікна терміналу, скористайтеся командою cat.

cat  ~/inactive-services.txt

Використовуйте Systemd, щоб переглянути всі встановлені служби

Якщо вам потрібно побачити всі встановлені служби Systemd, незалежно від того, активні вони чи ні, вам потрібно буде використати команду systemctl list-unit-files –type=service та виключити перемикач командного рядка –state. Виключивши –state, Systemd зможе легко перерахувати кожен файл служби на вашому комп’ютері.

systemctl list-unit-files --type=service

Після виконання вищевказаної команди Systemd роздрукує таблицю з кожним службовим файлом у системі. Звідси ви можете відсортувати таблицю, щоб знайти потрібний сервісний файл.

Якщо ви не можете знайти певний службовий файл, ви можете об’єднати команду systemctl list-unit-files –type=service з командою grep, щоб використовувати фільтр. Використовуючи наведену нижче команду, відфільтруйте таблицю, щоб знайти потрібний сервісний файл.

systemctl list-unit-files --type=service | grep 'my-service'

Бажаєте експортувати всі служби Systemd у текстовий файл для читання пізніше? Виконайте таку команду.

systemctl list-unit-files --type=service > ~/service-files.txt

Ви можете будь-коли переглянути текстовий файл за допомогою наведеної нижче команди cat.

cat ~/service-files.txt

Використовуйте Systemd для відображення статусу окремої служби

Хоча корисно знати, як перерахувати всі служби Systemd, активні та неактивні, також корисно знати, як перерахувати статус служб окремо. Ось як це зробити.

  Як додати надійні веб-сайти в браузер

Спочатку відкрийте вікно терміналу. Відкривши вікно терміналу, скористайтеся командою systemctl status для певної служби. Наприклад, щоб знайти статус «NetworkManager.service», запустіть таку команду.

systemctl status NetworkManager

Якщо ви хочете експортувати результат команди status у текстовий файл для подальшого читання, ви можете ввести команду нижче.

systemctl status MyService > ~/MyService-status.txt

Щоб переглянути цей файл, виконайте таку команду cat.

cat ~/MyService-status.txt