Домашня » як » Як керувати службами Systemd в системі Linux

    Як керувати службами Systemd в системі Linux

    Systemd тепер використовується за замовчуванням у більшості дистрибутивів Linux, від Fedora і Red Hat до Ubuntu, Debian, openSUSE і Arch. Команда systemctl дозволяє отримати інформацію про стан systemd і керувати запущеними службами.

    Незважаючи на суперечки, це, принаймні, вносить певну стандартизацію через дистрибутиви Linux. Такі ж команди дозволять вам керувати послугами так само на будь-якому дистрибутиві Linux, використовуючи systemd.

    Примітка: Щоб змінити конфігурацію вашої системи на дистрибутиві Linux, наприклад Ubuntu, який використовує sudo, вам слід вказати тут префікс команд sudo. На інших дистрибутивах Linux вам потрібно стати кореневим користувачем з su спочатку команду.

    Перевірте, якщо ваша система Linux використовує Systemd

    Якщо ви не впевнені, що ваш дистрибутив Linux використовує systemd, відкрийте вікно терміналу і запустіть наступну команду. Це показує номер версії systemd у вашій системі Linux, якщо у нього встановлено systemd:

    systemd -version

    Проаналізуйте процес завантаження

    Команда systemd-analysis дозволяє переглядати інформацію про процес завантаження, наприклад, як довго це займає і які служби (та інші процеси) додавали час до процесу завантаження.

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

    systemd-аналізувати

    Щоб переглянути, як довго починався процес, виконайте цю команду:

    systemd-аналізувати звинувачення

    Переглянути одиниці

    Systemd використовує "одиниці", які можуть бути службами (.service), точками монтування (.mount), пристроями (.device) або сокетами (.socket). Така ж команда systemctl керує всіма цими типами одиниць.

    Щоб переглянути всі доступні файли в системі:

    systemctl список-блок-файлів

    Щоб перелічити всі запущені одиниці:

    systemctl список-одиниці

    Щоб переглянути список всіх помилкових одиниць:

    systemctl - не виконано

    Керування службами

    Щоб переглянути список увімкнутих або вимкнутих служб, ви використовуєте ту саму команду systemctl, що й вище, але повідомте йому лише про список служб:

    systemctl list-unit-files -type = service

    Команда systemctl дозволяє запускати, зупиняти або перезапускати службу. Ви також можете повідомити службі, що "перезавантажити" його конфігурацію.

    Команда status - єдина дія, яка буде виводитись на термінал. Інші команди будуть діяти тихо.

    systemctl start name.service

    systemctl stop name.service

    systemctl restart name.service

    systemctl перезавантажує ім'я.сервісу

    systemctl status name.service

    Використовуйте команду systemctl enable для того, щоб systemd автоматично запускав службу (або інший тип пристрою) під час завантаження. Команда systemctl disable вимикає служби та припиняє автоматичний запуск з комп'ютера.

    systemctl увімкнути name.service

    systemctl вимкнути name.service

    Ви можете “маскувати” службу або іншу одиницю, щоб запобігти її запуску взагалі. Потрібно буде викрити його перед початком роботи в майбутньому:

    systemctl маска name.service

    systemctl видалити маску name.service


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

    Systemd також пропонує «цілі», які подібні до рівнів виконання, але різні. замість числа цілі мають імена - можливо, systemd одночасно перебувати в декількох цільових станах. Systemd також пропонує власний системний журнал, до якого можна отримати доступ за допомогою команди journalctl. За замовчуванням він зберігає системні журнали у двійковому форматі - але ви можете переключитися на звичайні текстові журнали, якщо бажаєте.

    Вікі Arch Linux містить більш глибоку інформацію про systemd, і більша частина інформації, що існує там, застосовується до systemd на всіх дистрибутивах Linux. Для отримання додаткової інформації також слід перевірити системну документацію свого дистрибутива Linux.

    Зображення: Bert Heymans на Flickr