| |
| 1.2, Av, 11:35, 04/09/2005 [ответить] [смотреть все]
| +/– | |
Как правило у любого демона есть опция запуска foreground:
#!/bin/sh
echo $$ > /var/run/'basename $0'.pid
while true; do
{путь к демону} -D
done
это гораздо надежнее - мгновенно восстанавливается при любом завершении, запускать скрипт с &. Убить kill 'cat /var/run/...' |  | | |
| |
| 2.3, HFSC, 17:23, 04/09/2005 [^] [ответить] [смотреть все]
| +/– | |
Зачем плодить процессы (особенно через while true :) ), если есть супервизоры (xinetd,daemontools,monit и тд), специально для этого предназначенные. |  | | |
| |
| 3.6, Av, 09:22, 05/09/2005 [^] [ответить] [смотреть все]
| +/– | |
Эти процессы висят - пить есть не просят, время процессорное не тратять - зато живучесть нужных демонов максимальная |  | | |
|
|
| 1.5, Павел, 07:08, 05/09/2005 [ответить] [смотреть все]
| +/– | |
бывают случаи, когда демон отвалится, а pid остаётся.
Предлагаю по крону запускать следующее:
#!/bin/sh
num='ps ax|grep /usr/bin/daemon|wc -l'
if [ $num -lt 2 ]; then
/usr/local/bin/start.daemon
fi
Проверку количества процессов поставить по вкусу.
|  | | |
| 1.7, Yurik, 10:45, 05/09/2005 [ответить] [смотреть все]
| +/– |
> бывают случаи, когда демон отвалится,
> а pid остаётся.
именно это и проверяет kill -0 $PID 2>/dev/null |  | | |
| 1.8, s2, 13:10, 05/09/2005 [ответить] [смотреть все]
| +/– |
так проще!
#!bin/sh
ps ax |grep squid |grep -v grep
if expr $? = 1
then
echo "Squid Starting"
squid
else
echo "Squid Alredy started"
fi |  | | |
| |
| 2.14, Denis, 13:58, 07/10/2009 [^] [ответить] [смотреть все]
| +/– |
забыл сказать, что для получения номера pid процесса в скрипте с #!bin/sh используется строка: sudo sh -c 'cat /var/run/squid/squid.pid' или sh -c 'cat /var/run/squid/squid.pid'
|  | | |
|
| 1.15, cat, 08:07, 28/10/2009 [ответить] [смотреть все]
| +/– |
А у меня вылезла такая ошибка cannot open /var/run/shutdown.pid. И не могу найти как поправить
|  | | |
|
|