Як додати сервіс в автозавантаження в Linux?

20.05.2020 2395 на прочитання 4 хвилини

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

У цій статті розглянемо процес додавання сервісів в автозавантаження для найпопулярніших дистрибутивів Linux: CentOS, Debian і Ubuntu.


Debian / Ubuntu

Для дистрибутивів Debian і Ubuntu управління автозавантаженням служб і демонів здійснюється за допомогою утиліти update-rc.d через демон init. Сама утиліта працює з символічними посиланнями пов'язаних з init скриптами, які керують запуском/зупинкою програм, розташованих в каталозі /etc/init.d.

Коротко пройдемося по основних командах:

  •  вивід списку сервісів та їх стану

 service -status-all

  •  додати сервіс в автозавантаження (service - назва самого сервісу)

 update-rc.d services defaults

  • видалити сервіс з автозавантаження

  update-rc.d -f service remove

Опція -f відповідає за видалення символічних посилань

 

CentOS 6

Тут за автозагрузку демонів /програм/служб відповідає вміст каталогу /etc/rc.local. Управління цими процесами йде через команду chkconfig, яка крім стандартних функцій додавання /видалення служб з автозавантаження має рівні виконання команди (рівні запуску). Рівні запуску - режими роботи операційної системи, кожен з яких несе в собі встановлений напрямок функціоналу і обмеження у виконанні.  Всього рівнів існує сім, які нумеруються від 0 до 6.

   -  0 рівень - припинення роботи системи.

   -  1 рівень - однокористувальницький режим, доступний тільки користувачу root.

   -  2 рівень - режим, розрахований на декілька користувачів, можливо робота з декількох терміналів, вхід йде вже  і для звичайних користувачів.
   - 3 рівень - також розрахований на багато користувачів, переважно для налаштування мережевих служб.

   - 4 рівень - не використовується.

   -  5 рівень - включення графічної підсистеми X11, для отрмання можливості використання графічного інтерфейсу замість командного рядка.

   - 6 рівень - перезавантаження системи.

 

  •   вивід на екран списку всіх сервісів

chkconfig -list

  • отримання інформації по конкретному сервісу

chkconfig -list service

Тут після використання команди на екрані в консолі біля номерів рівнів будуть йти індикатори on -ввімкнений, off - вимкнений, що визначає, на яких рівнях працює чи ні зазначений сервіс.

  • добавление сервиса в автозагрузку

chkconfig service on

  • видалення сервісу з автозавантаження

chkconfig service off

  •   для додавання сервісу на певних рівнях

 chkconfig -level 015 httpd on

Де після --level вказуються номера рівнів (прописуються без пробілів), на яких буде доступний цей сервіс.

 

Для версій Debian 8, Ubuntu 15.04, CentOS 7 і вище


У більш нових версіях CentOS, Debian і Ubuntu в якості демона автозавантаження сервісів застосовується systemd.  В Systemd для цього використовуються unit-файли з каталогу / etc / systemd / system. Systemd є дуже універсальним і багатофункціональним менеджером систем Linux, і дозволяє розподіляти запуск служб в процесі завантаження ОС (вмикати або вимикати їх), тим самим максимально контролювати сам запуск. Systemd йде у зв'язці з командою systemctl, через яку йде управління автозавантаженням сервісів в системі.

  • вивід списку всіх сервісів

 systemctl list-unit-files -type = service

  •     перегляд статусу певного сервісу

systemctl status service

  •     щоб додати сервіс в автозавантаження

systemctl enable service

  •     видалити сервіс з автозавантаження

 systemctl disable service

  •    щоб перевірити,чи доданий сервіс в автозавантаження

 systemctl is-enabled service

 

Автозавантаження сервісів призначене полегшувати рутинні завдання при роботі з ОС Linux, з чим успішно і справляється.


Close Screen
Maria Kholodnitska
Статей: 220
Оцініть статтю:


Дякую за відгук
Рейтинг: 1 з 5 Голосів: 1