System V Init Script

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Hey Listees,

I have a question (hopefully quite simple) about the system V init scripts in /etc/init.d. I have an app installed and for some reason it had no system V init script. It has been installed a long while now so I can't quite remember whats going on but basically I remember I wrote the init script my self and the app is enabled as a service which chkconfig to run at system levels 3, 4 and 5. However when I wrote the script I only ever added a "start" and "stop" clause to it (why I can't remember?), now I need to add a "restart" clause but I'm having an issue.

I have pasted the code below from my "restart" clause but from what I can tell, it is killing the app but not restarting it, I think because the killing process is still in action so when it start the app again it just gets killed straight away. If I enter "/etc/init.d/my_app restart" the app is terminated but does not start again, entering "/etc/init.d/my_app start" immediately after fires it up straight away so there is no problem there; can someone suggest a better way as my scripting is very begginnerish (if thats a word) and I don't doubt for a second I am doing this in a very inefficient manner:

<snipety snip snip>

restart)
echo -n "Stopping my_app: "
pgrep my_app | while read PIDS; do # I have chosen this method because my_app spawns various child processes
kill -9 $PIDS                                   # and they all need to DIE!  (Killing the parent process would kill the child processes
done                                              # however there are actually two parent processes so this seems like a good idea?)
echo -n "Starting my_app: "
/usr/local/my_app/sbin/my_app_bin &
exit $?
;;

<snip snap snorum>


Any input is greatly appreciated!

Regards,
James ;)

-----BEGIN GEEK CODE BLOCK-----
 Version: 3.1
GIT/MU/U dpu s: a--> C++>$ U+> L++> B-> P+> E?> W+++>$ N K W++ O M++>$ V-
PS+++ PE++ Y+ PGP t 5 X+ R- tv+ b+> DI D+++ G+ e(+++++) h--(++) r++ z++
------END GEEK CODE BLOCK------
_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos

[Index of Archives]     [CentOS]     [CentOS Announce]     [CentOS Development]     [CentOS ARM Devel]     [CentOS Docs]     [CentOS Virtualization]     [Carrier Grade Linux]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Linux USB]
  Powered by Linux