Яка різниця між службою та systemctl?


33

Можливо, це тривіальне питання, але мені це не зовсім зрозуміло. На одному з наших серверів у нас запущені фонові процеси, з яких було розпочато, serviceта деякі інші, з яких було розпочато systemctl, наприклад:

$ service nginx start
$ systemctl start gunicorn

Яка різниця між двома командами? Який із них є кращим способом роботи з фоновими послугами? Як налаштувати бажану команду?


3
є дуже гарне пояснення є
Фелікс Брюне

Болісна частина цього, деякі кажуть, що служба є "неіснуючою", і якщо це не так, чому, пекло, вони змінюють порядок аргументів, як з "find / grep / locate" і т.д. ... без узгодженості в Linux-релізах :(
killjoy

Відповіді:


37

serviceце команда "високого рівня", яка використовується для запуску та зупинки служб у різних Unix і Linux. Залежно від менеджера сервісів "нижчого рівня" serviceпереадресації на різні бінарні файли.

Наприклад, на CentOS 7 він переспрямовує systemctl, а на CentOS 6 він безпосередньо викликає відносний /etc/init.dскрипт. З іншого боку, у старих випусках Ubuntu він перенаправляєupstart

serviceє адекватним для базового управління сервісом, при цьому безпосередньо виклик systemctlдає більші можливості керування.


9

systemctlв основному є більш потужною версією service.

З serviceви можете зробити тільки команди , пов'язані з обслуговуванням (тобто status, reload, restart) , тоді як з systemctlви можете використовувати більш складні команди , такі як:

systemctl is-failed name.service # check if service failed to load

Або послуги маскування:

systemctl mask name.service

На цій сторінці є багато хорошої інформації від Ask Ubuntu.


1

systemctl є основною утилітою для управління демонами / службами в systemd ,
тоді як serviceкоманда - традиційна утиліта у SysVinitсвіті.

Однією з особливостей systemd є сумісність із командами SysVinit / legacy,
тому, якщо у вас є systemctlкоманда,
service foo startбуде обгортка навколо systemctl start foo.

Та сама історія для chkconfig .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.