Как замаскировать службу с помощью команды systemctl

Kak Zamaskirovat Sluzbu S Pomos U Komandy Systemctl



Systemctl — это утилита командной строки, используемая для управления системными службами. Он имеет множество вариантов управления службой в Linux, например запуск службы, ее остановку, включение и отключение. Есть еще один вариант, называемый маска .

Маскирование службы systemd означает, что служба отключена и не может быть включена ни системой, ни по команде вручную. Маскирование — более сильная форма отключения.

В этом руководстве я расскажу вам, как замаскировать службу в Linux с помощью systemctl и как ее снять. Более того, я расскажу о ключевых различиях между замаскированной службой и отключенной службой.







Предупреждение: В Linux службы взаимозависимы. Так как маскировка сервиса отключает его и запрещает любую активацию, поэтому используйте его осторожно.



Прежде чем идти дальше, давайте сначала поймем механизм работы замаскированного сервиса.



Что такое маскированная услуга

Замаскированная служба — это постоянно отключенная служба, которая не позволяет системе или системному администратору включить ее. Системные администраторы обычно используют маска возможность деактивировать неисправные или конфликтующие службы. Однако рекомендуется использовать эту опцию с осторожностью, поскольку маскирование важной системной службы может затруднить загрузку системы.





Как составить список замаскированных сервисов

Чтобы просмотреть замаскированные службы в Linux, используйте команду единицы списка вариант с упомянутым состоянием замаскирован.

systemctl список единиц --состояние = в маске



Как замаскировать сервис

Команда systemctl может использоваться для маскировки любой службы с помощью маска вариант. Общий синтаксис команды указан ниже.

судо маска systemctl [ Наименование услуги ]

Опция маски в приведенном выше синтаксисе по сути создает символическую ссылку на службу в /etc/systemd/система .

Также можно указать одну или несколько услуг, разделенных пробелом.

Давайте замаскируем службу SSH, используя приведенный выше синтаксис.

судо Маска systemctl ssh.service

Чтобы проверить статус замаскированной службы, используйте команду --state= вариант с systemctl список единиц .

Если вы попытаетесь запустить службу, вы получите сообщение о том, что устройство замаскировано.

Примечание: Вы не можете замаскировать службу, созданную в /etc/systemd/система каталог. Поскольку службы в этом каталоге необходимы для работы системы, их маскирование может нанести ущерб нормальной работе системы. Однако отключение этих служб эквивалентно их маскировке.

Как временно замаскировать службу

Службу можно замаскировать до следующей загрузки, используя команду –время выполнения вариант.

судо маска systemctl [ Наименование услуги ] --время выполнения

Он создает символическую ссылку службы в /run/systemd/система каталог. Если символическая ссылка сервиса уже присутствует в каталоге, то сервис предназначен для временной маскировки.

Как разоблачить сервис

Используйте команду systemctl с разоблачать возможность снять ограничения маски. Эта команда не принимает путь к службе, поэтому необходимо указать только имена служб.

судо systemctl снять маску [ Наименование услуги ]

Возможно, вам придется перезагрузить систему после демаскирования службы.

Разница между замаскированной службой и отключенной службой

Отключенная служба может быть включена и запущена системой или по командам вручную. Однако замаскированную службу невозможно включить ни системой, ни вручную.

Когда служба отключена, символическая ссылка, созданная в /etc/systemd/система каталог удаляется, и служба не активируется при загрузке. Но его можно активировать зависимыми службами.

С другой стороны, замаскированная служба связана с /dev/ноль что делает его навсегда непригодным для использования.

Обратите внимание, что /устройство Каталог содержит файлы блочных устройств. /dev/ноль — это виртуальное устройство, которое удаляет все, что на него записано. Обычно он используется для удаления вывода из stdout и stderr.

Заключение

Если вы хотите навсегда отключить какую-либо службу, используйте команду systemctl Mask. Замаскированная служба не может быть включена даже системой. В этом руководстве я рассказал, как замаскировать службу навсегда и временно. Кроме того, мы также упомянули метод демаскирования службы и ключевые различия между замаскированной и отключенной службой.