Здравствуйте, сразу скажу, что новичек в этом всём, но кое что уже успел понять :)
проблема - у меня стоит Debian и используется он в качестве шлюза доступа в интернет, установлена на нем служба upnpd для автоматического перенаправления портов.
Время от времени она перестает работать - зависает (процесс висит, но порты не открываются), либо просто отключается. Может поработать и несколько суток без проблем, а может и через 1-2 часа отключиться сама по себе:)
В общем нужен скрипт для проверки - запущена ли эта служба или нет :) чтобы скрипт в случае необнаружения службы в процессах - запускал ее поновой:)
Ну к примеру для просмотра "статуса" службы можно использовать команду:
[console]
ps aux | grep служба
[/console]
покажите кстати вывод ps aux | grep upnpd
посмотреть то можно естественно :) просто мне нужен скрипт, который бы просматривал, запущены ли эти две службы :) в случае необнаружения одной или обоих служб, запускал бы их поновой :)
if [ "$(/etc/init.d/служба status)" != "служба is running." ];
нужен весь
/etc/init.d/служба, как он там
/etc/init.d/upnpd назывется?
так, мне нужен полный /etc/init.d/upnpd и вообще название этой службы как пакета, чтоб я мог себе его поставить, потому, что я понятие не имею что это такое.
и еще вопрос, во время вылета, pid фал остается?
насчет PID файла не знаю, почему служба сама по себе вылетает или зависает я тоже понятия не имею :(
служба эта нужна для автоматичесокго перенаправления портов, в основном у меня она используется для торрент клиентов, без этой службы торренты плохо работают :)
tnega, запустите ЭТО, идите в директорию /var/pid и ищите его pid файл, если он есть - хорошо, есть надежда на написание нормального скрипта запуска.
/var/pid такая директория к сожалению отсутствует
но где то я недавно встерчал директорию с пид файлами, и точно запомнил, что там небыло пид файла моей службы.
По команде ps -eafw - смотрю какие процессы у меня запущены, UPNPD службе всегда выдается при каждом запуске разный PID. Может я не понимаю Вас?! :) прошу прощения заранее.
в директории /var/run много файлов с расширением PID, тут наверное я и побывал.
может можно там самому создать файл PID ? и чтобы при загрузке он выдавал моей службе один и тот же ПИД?
tnega, да, действительно /var/run, моя ошибочка, вот только если там нету pid файла, то всё, написать по человечески скрипт не получиться, ща попробую по дебильному, но хоть рабочий какойнить.
tnega, да, действительно /var/run, моя ошибочка, вот только если там нету pid файла, то всё, написать по человечески скрипт не получиться, ща попробую по дебильному, но хоть рабочий какойнить.
большое спасибо, буду ждать, но учтите, у меня работают сразу два процесса upnpd, а именно:
upnpd eth0 eth1
и
upnpd ppp0 eth1