Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   Автозагрузка в FreeBSD (http://forum.oszone.net/showthread.php?t=209460)

JaRule 20-06-2011 13:31 1698126

Автозагрузка в FreeBSD
 
Всем добрый день! Мне нужно чтоб при запуске сервера FreeBSD у меня автоматом запускались два приложения: squid и rinetd -c /usr/local/etc/rinetd.conf. Я нашел в инете два способа: написать скрипт и поместить его в папку /etc/rc.d/ - так и сделал, скрипт работает а при загрузке компа не срабатывает. Вариант второй: в Crontab написать @reboot имя команды, - сделал, все равно не работает... Как с этим можно побороться? И какой вариант лучше?

Telepuzik 20-06-2011 13:40 1698131

Цитата:

Цитата JaRule
squid »

А что мешает прописать в rc.conf строчку squid_enable="YES" для автоматического старта squid-а?

JaRule 20-06-2011 13:43 1698136

а я про это не знал)) щас пропишу... а со второй командой как поступить?

Telepuzik 20-06-2011 13:57 1698150

Цитата:

Цитата JaRule
щас пропишу... а со второй командой как поступить? »

Если конфиг его лежит там где его по-умолчанию ищет rinetd то так же прописывается rinetd_enable="YES".

JaRule 20-06-2011 14:02 1698154

Я это тоже щас сделал, проверить работает или нет смогу тока после перезагрузки сервака, но щас я не могу его перезагрузить, люди работают. Если вдруг это не заработает после загрузки, я напишу))

vadblm 20-06-2011 14:21 1698168

Вообще, если устанавливаете любой демон из портов/пакаджей, к нему майнтайнер 100% уже нарисовал стартскрипт. На примере rinetd смотрим:
Код:

$ pkg_info -xL rinetd | grep rc.d
/usr/local/etc/rc.d/rinetd

Ага, есть такой стартскрипт.
Теперь смотрим что в нём, а там в комментариях:
Цитата:

#
# Add the following lines to /etc/rc.conf to enable rinetd:
# rinetd_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable rinetd
# rinetd_flags (str): Set to "" by default.
# Extra flags passed to start command
#
Майнтайнеры стараются придерживаться конвенции, что для включения автозапуска следует добавлять в rc.conf строку вида <демон>_enable="YES", поэтому Telepuzik не составило труда сделать совершенно правильную догадку. Но для некоторых софтин это неочевидно, или необходимы какие-либо дополнительные гайки.

Запомните это на будущее, чтобы, когда вам приспичит поставить ещё одну софтинку, не пришлось бегать по форумам с вопросом, как же её запускать.

JaRule 20-06-2011 16:19 1698239

Большое спасибо!

gf100 20-06-2011 16:31 1698252

А для чего-то нестандартного:
Цитата:

Цитата JaRule
написать скрипт и поместить его в папку /etc/rc.d/ »

существует папка /usr/local/etc/rc.d/
только надо не забывать ставить атрибут "исполняемый" на скрипт.

vadblm 20-06-2011 16:34 1698255

Цитата:

Цитата gf100
только надо не забывать ставить атрибут "исполняемый" на скрипт. »

И, если стартскрипт написан не в соответствии с фреймворком rcNG, то должен иметь "расширение" .sh
Также, если нужно просто что-то запускать и писать скрипт по уму лень, то сгодится добавить строку запуска в /etc/rc.local

Подробности - man rc

JaRule 21-06-2011 11:06 1698715

Цитата:

Цитата vadblm
то должен иметь "расширение" .sh »

Я скрипты пишу на перле и ставлю им расширение .pl, но разумеется, когда я их запускаю они работают.

vadblm 21-06-2011 11:25 1698725

Речь была строго о rc-скриптах. Всё же, рекомендую почитать man rc, чтобы получить точное представление о том, что происходит при подъёме.


Время: 17:58.

Время: 17:58.
© OSzone.net 2001-