Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam
Bardzo potrzebuje pewnego skryptu za którego nie wiem jak mam się zabrać ponieważ dopiero się tego wszystkiego uczę, wiec mam nadzieje że mi pomożecie:
oto sprawa wygląda tak:
1. mam uruchomione coś w Screenie, powiedzmy: Screen -AmdS mix ./hlds_run......................
2 aplikacja chodzi i ciągle wyświetla swoje działanie w ukryciu.
3. chodzi mi o to że gdy ta aplikacja wyświetli dany tekst, aby wykonał się wybrany przeze mnie skrypt...
dokładniej gdy w screenie pojawi się tekst "Segmentation fault" wtedy skrypt ma uruchomić ./start.sh co spowoduje uruchomienie ponowne serwera, a jeżeli się "Segmentation fault" nie pojawi skrypt ma nic nie robić i się kończyć, wrzucę sobie go w crona aby się wykonywał co 5min więc chce pominąć pętle.
jeżeli ktoś wie jak takie coś zrobić proszę o pomoc!
Offline
Po uruchomieniu programu, zapisuj sobie gdzieś jego PID (PID ostatniego procesu uruchomionego w tle znajduje się w zmiennej $!). Następnie z crona uruchamiaj skrypt który sprawdzi, czy proces o danym PID nadal działa (przy pomocy ps). Jeżeli nie, to uruchom ponownie tamten program.
Offline
Do Crona?
Jak ktoś nie chce lub nie umie skryptem, to nie ma takiego obowiązku, natomiast specjalnie do takiej zabawy jest program Monit - w repo.
Radzilbym raczej zainteresować się przyczyną:
dokładniej gdy w screenie pojawi się tekst "Segmentation fault" wtedy skrypt ma uruchomić ./start.sh co spowoduje uruchomienie ponowne serwera, a jeżeli się "Segmentation fault" nie pojawi skrypt ma nic nie robić i się kończyć, wrzucę sobie go w crona aby się wykonywał co 5min więc chce pominąć pętle.
czyli, co zrobić, np inne biblioteki, inna wersja, itp, żeby ten problem wyeliminowac, bo nic dobrego to nie wróży.
Ostatnio edytowany przez Jacekalex (2013-03-12 22:52:39)
Offline
mamy 4 serwery i tylko jeden PaintBall wyrzuca ten błąd i zawsze wyrzucał... binarki nic nie dają w logach nic nie ma... taki problem i tyle ;/ wszystkie serwery chodzą na tych samych plikach.
Co do pidu, on się ciągle zmienia, co uruchomienie... a ja jestem początkujący w tych sprawach i nie kumam tego za bardzo :(
Jeżeli ktoś z was ma pojęcie jak napisać skrypt który gdy pojawi się ten błąd wykona restart (skrypt do restartu napisałem) to proszę aby napisał jak to zrobić lub odezwał sie na gg 4451809 naprawdę jest to dla mnie bardzooooo ważne
PS. zaraz poczytam o tym Monit
Offline
Strony: 1