Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Выполнение при запуске и выключении


Автор: r3r08 18.1.2010, 22:52
Подскажите, как правильно сделать выполнение скрипта при запуске и выключении системы? Много чего находил, но немного непонятно...

Автор: Egik2 18.1.2010, 23:15
Прежде всего скажи свою ось?
Если линукс, то скажи под каким run-levelом надо что запускать?
Общее правило такое, помещаешь скрипт запуска в каталог /et/init.d/
Потом для соответствующего run-levelа делаешь ссылки на этот скрипт.
Например при запуске в многопользовательском текстовом режиме отвечает run-level 3.
Ты создаешь скрипт /etc/init.d/init_script
и создаешь в каталоге /etc/rc3.d символическую ссылку на него:
ln -s /etc/init.d/init_script S99init_script
Это будет означать, что при загрузке системы в runlevel 3 будут выполнять скрипты из каталога /etc/rc3.d 
в порядке S1, S2,..., S99 (S - Start означает), ты сам должен решить когда что у тебя будет запускаться.
и твой скрипт вызовется так:
S99init_script start, то есть ему в качестве параметра передастся start, значит скрипт должен уметь обрабатывать параметр start.

Аналогично делается при выключении системы, только каталог /etc/rc.6 имя ссылки должно быть K99init_script (К- kill означает), 
и твоему скрипту передастся параметр stop

Автор: r3r08 18.1.2010, 23:19
linux ubuntu 8 и 9

Автор: Egik2 19.1.2010, 15:28
Значит все будет работать, как я и описал  smile 

Автор: bilbobagginz 19.1.2010, 16:39
Egik2
смежная тема с темой об init-скрипте.

обрати внимание в убунтах есть пример для такого скрипта:
/etc/init.d/skeleton
переименуй его и "подкрути".
насчёт ссылок, есть программа: update-rc.d, читани ее мануал.
она создает ссылки в нужных каталогах.



Автор: r3r08 19.1.2010, 17:49
Спасибо большое за советы smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)