>Посоветуйте пожалуйста доку (не маны) по написанию стартовых сценариев во FreeBSD.
>Просто часто встречаю, что одну и ту же весчь можно запустить по-разному,
>
>разный формат (язык того же /bin/sh), да и еще по всей системе
>разбросаны (у меня как минимум в двух местах: /etc/rc.local и /usr/local/etc/rc.d).
>
>
>Например,можно ведь запускать по разному (файл /usr/local/etc/rc.d/run.sh)
>
>#!/bin/sh
>
>#можно так, правда в этом случае при загрузке компа сдесь висим -> #помогает CTRL-C, но процесс все-таки запускается
>[ -x /usr/local/squid/RunCache ] && /usr/local/squid/RunCache && echo -n ' squid'
>
>#или так
>case "$1" in
>start)
> rm /usr/local/squid/var/logs/squid.pid > /dev/null 2>&1
> (cd /tmp; /usr/local/squid/bin/RunCache > /dev/null 2>&1 &)
> echo -n 'squid'
>stop)
> kill 'cat /usr/local/squid/var/logs/squid.pid'
>esac
>exit 0
>
>#или вот так
>/usr/local/squid/bin/RunCache
>
>Хочется как-то это дело упорядочить под одно и чтобы в одном месте
>было все.
man rc.local
Правильный подход - не трогать НИ ОДНОГО системного скрипта, все они
устроены таким образом что позволяют через заданные переменные запускать
свои скрипты. В верхнем мане ВСЕ расписано, в дополнение лишь man init,
путь к стартап скриптам следует задавать в своем /etc/rc.conf по примеру
# grep local_startup /etc/defaults/rc.conf
и вообще полезно посмотреть
# less /etc/defaults/*
и на подобии этих make.conf и rc.conf иметь свои, со СВОИМИ НАСТРОЙКАМИ
в /etc: /etc/make.conf и /etc/rc.conf, в тех дефолтных файлах описана масса полезных переменных, которые порверяются в скриптах /etc/rc*
и в зависимости от значений производятся те или иные действия.
Почему НЕ РЕКОМЕНДУЕТСЯ менять системные скрипты /etc/rc* - да потому
что после upgrade'а и запуска mergemaster, старые с вашими правками,
могут быть по забывчивости заменены на новые.
Все свое, логичнее и удобнее держать в альтернативном дереве системы:
/usr/local, для тех кто не понимает что это, посмотрите структуру
директорий корня "/" и структуру директорий альтернативного корня "/usr/local" - обычно такое сравнение более понятно.