サーバー管理をしていると「あー!Apache落ちてる!」みたいなことが時たまあります。 そうならないように、いや、そうなっても早めに気づくように、プロセスチェックのシェルプログラムを作りました。 どこかのサイトから引っ張ってきて参考にしてます。 パクったわけじゃないよ!vi /etc/cron.hourly/process_chk.sh で、クーロンの中に仕込みます。ソースは以下のとおり #!/bin/sh message="" #postfixpostfix=`ps ax | grep '/usr/libexec/postfix/master' | grep -v 'grep'`if [ -z "${postfix}" ]; then /etc/init.d/postfix restart postfix=`ps ax | grep '/usr/libexec/postfix/master' | grep -v 'grep'` if [ -z "${postfix}" ]; then message="${message}postfix stopd " fi message="${message}postfix stopd restart OK "fi #postmasterpostmaster=`ps ax | grep '/usr/bin/postmaster' | grep -v 'grep'`if [ -z "${postmaster}" ]; then /etc/init.d/postgresql restart postmaster=`ps ax | grep '/usr/bin/postmaster' | grep -v 'grep'` if [ -z "${postmaster}" ]; then message="${message}postmaster stopd " fi message="${message}postmaster stopd restart OK "fi #httpdhttpd=`ps ax | grep '/usr/sbin/httpd' | grep -v 'grep'`if [ -z "${httpd}" ]; then /etc/init.d/httpd restart httpd=`ps ax | grep '/usr/sbin/httpd' | grep -v 'grep'` if [ -z "${httpd}" ]; then message="${message}httpd stopd " fi message="${message}httpd stopd restart OK "fi #send mailif [ -n "${message}" ]; then mail -s "***ERROR***** process_chk.sh flagsystem.co.jp" "root@flagsystem.co.jp" << body${message} .bodyfi exit 0