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
mam taki o skrypcik
#!/bin/bash if [ -z "$(pgrep D2GS)" ]; then { screen -dmS d2gs wine /home/d2realm/gs/D2GS.exe echo "gsUp" } fi
ktory w zalozeniu ma sprawdzac, czy jest dana usluga, a jesli jej nie ma - to uruchamiac ja od nowa.
w crontab umiescilem cos takiego
* * * * * /home/d2realm/gs/stable.sh #gs stable
i o ile "recznie" odpalony skrypt, dziala bez problemow - tak pod cronem wyglada jakby w ogole nie dzialal.
dodatkowo popisalem, jeszcze pare skryptow, ktore juz niebardzo chca dzialac.
#!/bin/bash #Bnet/pvpgn /home/d2realm/pvgn-svn/sbin/bnetd echo "pvpgn up" sleep 5 #d2cs /home/d2realm/pvgn-svn/sbin/d2cs echo "d2cs up" sleep 5 #d2dbs /home/d2realm/pvgn-svn/sbin/d2dbs echo "d2dbs up" sleep 5 #Gs screen -dmS d2gs wine /home/d2realm/gs/D2GS.exe echo "gs up" sleep 5 #torrent screen -d -m -S rtorrent rtorrent screen -d -m -S irssi irssi echo "torrent up" sleep 1
i tu mam skromne podejrzenia, ze dzialalo by to jakby udalo mi sie zamienienic /home/d2realm/pvgn-svn/sbin/bnetd na samo bnet - jak to ma miejsc z rtorrent. z tego co googlalem to jakos trzeba to ulokowac w bin/bash, niestety zmiana powloki(tak to sie nazywa?) ciut mnie przerosla.
i jeszcze mam pytanie; czy w jakis sposob moge dorzucic do pierwszego skryptu zapis do osobnego pliku godziny jego wykonania?
z gory dziekuje za wszelka pomoc i wytkniecie wszelkich bledow.
Offline
#!/bin/bash proces=$(pgrep D2GS) if [ $? -eq 1 ]; then { screen -dmS d2gs wine /home/d2realm/gs/D2GS.exe echo "gsUp" } fi
Jeśli chodzi o crontab to:
crontb -e */1 * * * * /home/d2realm/gs/stable.sh
Offline
A nie lepiej użyć Daemontools?
W Debianie "od zawsze" jest repo.
Ten grzecznie pilnuje każdego demona, i automatycznie go podnosi, kiedy ten zdechnie.
Stosowany zazwyczaj do Qmaila, ale sprawdza się przy praktycznie wszystkich problematycznych demonach.
Jest też program Monit, albo lamerstwo bashowe:
while true; do PROGRAM; sleep 60; done;
I niech ktoś później spróbuje wyłączyć program. ;)
Zatrudnianie Crona do takiego pilnowania programu, to IMHO ciężkie nieporozumienie.
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2014-03-19 10:19:20)
Offline
daemontools jeszcze nie probowalem, zaraz do niego siade.
monit nie chce wspolpracowac; raz nie wykonuje skryptu po padzie, dwa nie wiem jak ustalic pid na sztywno - google nic madrego nie podpowiada.
monita tak skonfigurowalem
check process D2GS.exe with pidfile /var/run/D2GS.pid group system start program = "/home/d2realm/gs/stable.sh"
gdzie w D2GS.pid poprostu wpisalem nr z grepa
tylko co oczywiste po padzie nr sie zmienia.
Ostatnio edytowany przez jzs44 (2014-03-19 19:19:51)
Offline
Przykład użycia daemontools, np u mnie clamd miał walnięty skrypt startowy:
ls -ld /service/clamd/* -rwx------ 1 root root 67 03-19 10:42 /service/clamd/run drwxr-xr-x 3 root root 4096 03-19 10:40 /service/clamd/supervise
root ~> cat /service/clamd/run #!/bin/sh SERVICE=clamd exec /usr/bin/setuidgid clamav /usr/sbin/clamd --config-file=/etc/clamd.conf
Podnosisz demona svscan, który zarządza całym daemontools.
Ten do każdej usługi podnosi taki malutki programik supervise, który pilnuje demona, i podnosi automatycznie, jak dany demon sam zdechnie, ale nie, jak bo ubijesz.
Potem widać dwa procesy dotyczące programu i jeden demona svscan:
root 4424 0.0 0.0 1112 128 ? Ss 10:37 0:00 /usr/bin/svscan /service root 4426 0.0 0.0 1068 76 ? S 10:37 0:00 supervise clamd clamav 4451 0.0 5.7 639088 233820 ? Sl 10:38 0:18 clamd --config-file=/etc/clamd.conf
Ręczne podnoszenie usługi:
svc -u /service/program
wyłączanie:
svc -d /service/program
status usługi:
svstat /service/program
status wszystkich:
svstat /service/*
Daemontools to jeden z najlżejszych programów do podobnych zadań, jakie znam:
psmemng | egrep 'svscan|supervise' 48.0 KiB + 28.0 KiB = 76.0 KiB supervise 72.0 KiB + 56.0 KiB = 128.0 KiB svscan
Działa?
root ~> svstat /service/clamd /service/clamd: up (pid 4451) 32462 seconds
SOA#1
Ostatnio edytowany przez Jacekalex (2014-03-19 19:54:48)
Offline
Strony: 1