|
|
ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.
Въпрос |
От: na4inae6t |
Дата: 08/29/2007 |
Здравейте.
Имам следния въпрос.
Slack-11.0/Squid ver. 2.5
Как да отсея даден процес дали е активен?
Ако е активен да не правя нищо, а ако не е да го стартирам.
Става въпрос за проксито - Squid-a.
Благодаря предварително.
|
Отговор #1 |
От: deserve |
Дата: 08/29/2007 |
По принцип ти трябва един шел скрипт, който да проверява за
процеса, освен това ти трябва и crontab.
|
Отговор #2 |
От: deserve |
Дата: 08/29/2007 |
Направих ти примерен шел скрипт, който можеш да го запишеш
като squidchk. След това му дай: chmod +x squidchk.
Ето и какво трябва да съдържа файла:
#!/bin/sh
# squidchk
squidpath=/path/to/squid
pidpath=/path/to/squid/var/logs
if test -r $pidpath/squid.pid; then
squidpid=$(cat $pidpath/squid.pid)
if $(kill -CHLD $squidpid >/dev/null 2>&1)
then
echo "Squid is running. Exit."
exit 0
fi
fi
echo "Squid isn't running. So let's run it."
cd $squidpath/sbin/
./squid >/dev/null 2>&1
Тествано е и работи. Вярвам, че с paths ще се оправиш. По
default squid слага pid файла в squid/var/logs.
Успех!
|
Отговор #3 |
От: deserve |
Дата: 08/29/2007 |
Това всичкото можеше да го събера в един пост, но... да ме
пита някой. :)
Това е последната стъпка:
# crontab -e
и вписваш това:
*/5 * * * * /path/to/squidchk >/dev/null 2>&1
П.С. Поправям си едното echo в баш скрипта на:
"So, let's run it." :P
Надявам се да съм помогнал.
|
Отговор #4 |
От: deserve |
Дата: 09/04/2007 |
Е, върви ли всичко по вода? Нищо не каза авторът.
|
Отговор #5 |
От: na4inae6t |
Дата: 09/06/2007 |
Благодаря ти приятелю.
Това ми трябваше.
|
<< Linux for Handheld PC (0
) | Server reboot then HANG (0
) >>
|
|
|
|
|