Автозавантаження в centos, одмінскій блог

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

Власне в CentOS процес завантаження працює за принципом System V і розписаний у файлі / etc / inittab. точніше розписано то як процес INIT відпрацьовує рівні завантаження. В системі фали завантаження знаходяться в каталозі /etc/rc.d і носять назви rc0.d, rc1.d, rc2.d, rc3.d, rc4.d, rc5.d, і rc6.d. Користувачі можуть розміщувати файли в цих каталогах які контролюватимуть запуск сервісів в сістеме.В свою чергу ці фали лінкуются на каталог /etc/rc.d/init.d і містяться в них скрипти запуску процесів. У зв'язку з цим для запуску сервісу необхідно створити повноцінний файл запуску сервісу в /etc/init.d. після чого задати символічний лінк на нього з папки відповідної того рівня запуску, на якому необхідно стартувати даний сервіс. Файлик запуску сервісу буде виглядати наступним чином, хоча можна розписати все пару рядків просто рядком запуску сервісу:

#! / Bin / bash
#
# Chkconfig: 35 90 12
# Description: Foo server
#

# Get function from functions library
. /etc/init.d/functions

# Start the service FOO
start () initlog -c "echo -n Starting FOO server:"
/ Path / to / FOO
### Create the lock file ###
touch / var / lock / subsys / FOO
success $ "FOO server startup"
echo
>

# Restart the service FOO
stop () initlog -c "echo -n Stopping FOO server:"
killproc FOO
### Now, delete the lock file ###
rm -f / var / lock / subsys / FOO
echo
>

Якщо немає бажання морочитися з написанням скрипта, то можна додати рядок ініціалізації запуску сервісу в файл /etc/rc.local. Це файл буде відпрацьований в самому кінці завантаження системи, але перед видачею меню логіна.

Для додавання сервісів знаходяться в попдапках rc0.d - rc6.d в автозавантаження в системі є спеціальна утиліта chkconfig. за допомогою якої можна додавати або виключати сервіси.

Крім цього можна скористатися утилітою ntsysv. для редагування всіх рівнів або завдань редагування для певного рівня:
# Ntsysv -level 34

Схожі статті