Скрипти ініціалізації для FreeBSD та Debian

Для будь-якого демона потрібен скрипт управління, щоб його запускати, зупиняти і т.д. Але не завжди в комплекті є цей скрипт ініціалізації. Сьогодні я розповім як написати найпростіший скрипт ініціалізації для двох основних систем, з якими я працюю цеFreeBSD таDebian/Ubuntu. Для прикладу будемо розбирати демон svnserve, а запускатиму я все від користувачаwww.

Приклад скрипту для FreeBSD

Створимо файл /usr/local/etc/rc.d/svnserve

Цей скрипт ініціалізації взято з постачання портуsubversion

Для автостарту під час завантаження системи пропишіть в /etc/rc.conf наступне:

Також у /etc/rc.conf можна передавати параметри, які замінюватимуть замовчальні

Детальніше про скрипт ініціалізації можна почитати на офіційних сторінках документації з FreeBSD:

Приклад скрипта для Debian/Ubuntu

Створимо файл скрипту та pid-файл (для того, щоб зберігати в ньому PID нашого демона)

Тепер напишемо сам скрипт, який можна буде запускати за допомогою командиservice або просто запускаючи скрипт і передаючи йому параметри

Приклад запуску демона

Для автостарту під час завантаження системи виконайте

Щоб видалити з автостарту системи виконайте

або просто забороніть право на запуск (chmod -x /etc/init.d/svnserve)

От ми й навчилися писати найпростіші скрипти ініціалізації. Щоразу вам писати не доведеться, тому що в комплекті до демона зазвичай йде скрипт ініціалізації. Якщо ви встановлюєте з будь-якої системи пакетів, він сам поставиться в "/etc/rc.d/" або "/usr/local/etc/rc.d/" дляFreeBSD, а дляDebian/Ubuntu у "/etc/init.d/".

Щоб включити автозапуск в Red Hatтреба: