Создание своего скелетона

Posted on 07/20/2012 by   |   Filed under templates, internet    Comments 11

Позволяет задать последовательность загрузки и поведение скрипта при разных runlevel'ах.

Изучаем /etc/init.d/skeleton, на его основе создаем скрипт /etc/init.d/my_script, которым будет запускаться/останавливаться наше приложение.

В этих директориях лежат скрипты остановки сервисов:

/etc/rc0.d/ 
/etc/rc1.d/
/etc/rc6.d/  

в этих — скрипты запуска сервисов:

/etc/rc2.d/  
/etc/rc3.d/  
/etc/rc4.d/ 
/etc/rc5.d/

Изучаем их на предмет последовательности (чем меньше первая цифра в начале скрипта, тем раньше запускается-останавливается приложение). Это может быть критично, если ваше приложение будет зависит от каких-то сервисов.

После того, как определились со скриптом запуска и очередностью, выполняем следующее :

Устаревшее

sudo update-rc.d my_script start 70 2 3 4 5 . stop 20 0 1 6 .

Новое

sudo update-rc.d my_script defaults

Здесь я определил, что мой скриптик должен запускаться попозже остальных(70), и останавливаться пораньше(20). Цифры 2 3 4 5 0 1 6 означают уровни загрузки.

Если что-то не понравилось - все можно удалить

sudo update-rc.d -f my_script remove

Подробности в man update-rc.d.

Выполнение скрипта при включении/отключении сети

Есть директория /etc/network/ с поддиректориями if-down.d, if-pre-up.d, if-post-down.d, if-up.d. Если разместить скрипт в одной из этих поддиректорий, то он будет выполняться соответственно при выключении, перед включением, после выключения или при включении сети.

Другой способ — указать в файле /etc/network/interfaces одну из следующих директив: up, pre-up, post-up, down, pre-down, post-down. Например, строка

post-up /peth/to/script.sh

после включения сети выполнит скрипт script.sh. Подробнее можно почитать в man interfaces.

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

Image Gallery

Services Overview

Curabitur sed urna id nunc pulvinar semper. Nunc sit amet tortor sit amet lacus sagittis posuere cursus vitae nunc.Etiam venenatis, turpis at eleifend porta, nisl nulla bibendum justo.

Contact Us

Nullam quam lorem, tristique non vestibulum nec, consectetur in risus. Aliquam a quam vel leo gravida gravida eu porttitor dui.

Address: 1458 TemplateAccess, USA
Telephone: +123-1234-5678
FAX: +458-4578
Others: +301 - 0125 - 01258
E-mail: mail@yoursitename.com