Если вы пользователь или администратор Linux, вам необходимо знать, как управлять службами в вашей системе. Службы – это программы, которые работают в фоновом режиме и обеспечивают важные функции, такие как работа в сети, печать, ведение журналов и т. д.
Но как составить список, запустить, остановить, включить, отключить или перезапустить службы в Linux? Ответ — команда systemctl. Эта команда является частью systemd, современного менеджера систем и служб для таких дистрибутивов Linux, как Ubuntu и Debian.
Если у вас Linux новичок и вы хотите управлять этими службами с помощью systemctel, выполните следующие действия.
Перечислить все службы с помощью systemctl
Чтобы просмотреть все службы вашей системы Linux, запустите в терминале следующую команду:
sudo systemctl list-units – сервис типа
Появится таблица с пятью столбцами: UNIT, LOAD, ACTIVE, SUBи ОПИСАНИЕ.
В столбце UNITотображается имя файла модуля службы, который является файлом конфигурации и определения службы. Этот файл содержит информацию о том, что делает служба и как ею управлять. Вы также можете просмотреть краткое описание службы в столбце ОПИСАНИЕ.
В столбце LOADпоказано, загружен ли файл служебного модуля в память. Столбец ACTIVEпоказывает, работает ли это служба или нет. Наконец, столбец SUBпоказывает подсостояние службы, например, запущено, завершено или произошел сбой.
Вы также можете использовать опцию -aили –allвместо службы –type, чтобы вывести список всех типов объектов, а не только служб. .
Показать список активных служб с помощью systemctl
Если вы хотите просмотреть только те службы, которые в данный момент активны (работают) в вашей системе, запустите эту команду в терминале Linux:
sudo systemctl list-units – сервис типа – состояние активно
Это позволит отфильтровать неактивные (остановленные) или неисправные службы.
Показать неактивные службы с помощью systemctl
Аналогично, если вы хотите просмотреть только те службы, которые в данный момент неактивны (остановлены) в вашей системе, запустите эту команду в терминале:.
sudo systemctl list-units –type service –state inactive
Это позволит отфильтровать активные (работающие) или неисправные службы.
Список неисправных служб с помощью systemctl
Если вы хотите увидеть службы, которые не удалось запустить или остановить в вашей системе, откройте терминал и выполните следующую команду:
sudo systemctl list-units –type service –state error
Это позволит отфильтровать все активные (работающие) или неактивные (остановленные) службы.
Показать включенные службы с помощью systemctl
Чтобы узнать, какие службы могут запускаться автоматически во время загрузки вашей системы, выполните следующую команду в терминале:
sudo systemctl list-unit-files – сервис типа – состояние включено
Появится таблица с двумя столбцами: UNIT FILEи STATE. В столбце UNIT FILE отображается имя файла служебного модуля. Столбец STATE показывает, включена ли служба.
Показать отключенные службы с помощью systemctl
Чтобы узнать, какие службы отключены и не запускаются автоматически во время загрузки вашей системы, откройте терминал Linux и выполните следующую команду:
sudo systemctl list-unit-files – сервис типа – состояние отключено
Это позволит отфильтровать включенные или замаскированные службы.
Показать подробную информацию о службе с помощью systemctl
Чтобы просмотреть более подробную информацию о конкретной службе в вашей системе, запустите следующую команду в терминале:
sudo systemctl status <имя-сервиса>
Замените
Это покажет вам такую информацию, как описание, состояние загрузки, активное состояние, подсостояние, идентификатор процесса (PID), использование памяти, использование ЦП и последние журналы обслуживания.
Вы также можете использовать подкоманду show вместо status, чтобы отобразить все свойства службы в формате name=value.
Запуск службы с помощью systemctl
Чтобы запустить службу, остановленную в вашей системе, запустите эту команду в терминале Linux:
sudo systemctl start <имя-сервиса>
Замените
При этом служба запустится в фоновом режиме и вернется к командной строке. Вы можете использовать подкоманду status, чтобы убедиться, что служба работает.
Остановить службу с помощью systemctl
Чтобы остановить службу, работающую в вашей системе, выполните в терминале следующую команду:
sudo systemctl stop <имя-сервиса>
Замените
Это приведет к остановке службы в фоновом режиме и возврату к подсказке. Вы можете использовать подкоманду status, чтобы убедиться, что служба остановлена.
Перезапустить службу с помощью systemctl
Хотите отредактировать и перезагрузить файл конфигурации службы и применить изменения? В этом случае вам придется перезапустить службу.
Чтобы перезапустить службу, работающую в вашей системе, откройте терминал и выполните следующую команду:
sudo systemctl restart <имя-сервиса>
Замените
Это остановит и запустит службу в фоновом режиме и вернется к командной строке. Вы можете использовать подкоманду status, чтобы убедиться, что служба работает.
Перезагрузить службу с помощью systemctl
Некоторые службы поддерживают перезагрузку своей конфигурации без остановки и запуска. Перезагрузка службы позволяет вам вносить незначительные изменения в файлы конфигурации этой службы без их перезапуска. Это быстрее и менее разрушительно, чем перезапуск.
Чтобы перезагрузить службу, поддерживающую эту функцию, используйте в терминале следующую командуsystemctl:
sudo systemctl reload <имя-сервиса>
Замените
Это приведет к перезагрузке службы в фоновом режиме и возврату к подсказке. Вы можете использовать подкоманду status, чтобы убедиться, что служба работает.
Включить службу с помощью systemctl
Чтобы включить автоматический запуск службы во время загрузки вашей системы, запустите эту команду в терминале:
sudo systemctl Enable <имя-сервиса>.
Замените
Это создаст символическую ссылку из файла сервисного модуля на местоположение в /etc/systemd/system, которая сообщит systemd запустить его во время загрузки.
Вы также можете использовать параметр –nowдля одновременного включения и запуска службы. Например:
sudo systemctl Enable – сейчас
Отключить службу с помощью systemctl
Чтобы отключить автоматический запуск службы во время загрузки вашей системы, запустите эту команду в терминале Linux:
sudo systemctl отключить <имя-сервиса>
Замените
Это приведет к удалению символической ссылки из /etc/systemd/system, которая сообщает systemd не запускать ее во время загрузки.
Вы также можете использовать параметр –now, чтобы одновременно отключить и остановить службу:
sudo systemctl отключить – сейчас
Показать замаскированные службы с помощью systemctl
Маскировка службы означает связывание ее файла модуля с /dev/null, что предотвращает загрузку службы или управление ею со стороны systemd. Это добавляет дополнительный уровень защиты.
Чтобы увидеть, какие службы замаскированы и не могут быть запущены или остановлены вручную или автоматически в вашей системе, запустите эту команду на терминале вашего ПК с Linux:
sudo systemctl list-unit-files –type service –состояние замаскировано
Список замаскированных служб появится в виде списка (с masked, указанным в столбце STATE)
Маскировка службы с помощью systemctl
Запустите эту команду в терминале, чтобы замаскировать запуск, остановку службы вручную или автоматически в вашей системе:
маска sudo systemctl <имя-сервиса>
Замените
Это создаст символическую ссылку из файла сервисного модуля на /dev/null, чтобы предотвратить его загрузку или управление со стороны systemd..
Демаскируйте службу с помощью systemctl
Вы можете снять маску с службы, которая ранее была замаскирована. Это удалит символическую ссылку на /dev/null и позволит использовать и загружать ее в другом месте.
Чтобы снять маску со службы, которая ранее была замаскирована в вашей системе, выполните следующую команду:
sudo systemctl размаскировать <имя-сервиса>
Замените
Управление вашим ПК с Linux
Если ваш компьютер с Linux использует systemd для управления системными службами, вы можете использовать команду systemctlдля управления ими. Вы можете запускать, останавливать, перезагружать, отключать и контролировать свои службы, что дает вам больший контроль над вашим ПК с Linux.
Другой способ управления компьютером — ограничить доступ к определенным файлам. Вы можете используйте команду chmod на своем ПК с Linux, чтобы разрешить (или запретить) доступ.
Не уверены, подходит ли ваш дистрибутив Linux? Вместо этого вам следует попробовать еще один лучший дистрибутив Linux или даже попробовать портативный дистрибутив Linux. Использование портативного дистрибутива позволит вам легко переключаться между ними.
.