Rate this post
Простой скрипт для поиска и проверки запущена ли служба на Linux Unix ОС. Скрипт имеет возможность отправки уведомлений на почту.n
#!/bin/bashnn## Измените на значения в вашей системеn_pgrep="/usr/bin/pgrep"n_mail="/usr/bin/mail"nn## Лист процессовn_chklist="/usr/bin/php-cgi /usr/sbin/nginx /usr/sbin/lighttpd /usr/sbin/mysqld /usr/sbin/apache2 /usr/sbin/named /usr/sbin/pgsqld"nn## yes | non_sendemail="no"nn## Укажите почту для уведомленияn_email="[email protected]"nn## Do not change belown_failed="false"n_service="Service:"nn_running() {nlocal p="${1##*/}"nlocal s="true"n$_pgrep "${p}" >/dev/null || { s="false"; _failed="true"; _service="${_service} $1,"; }n[[ "$s" == "true" ]] && echo "$1 running" || { echo -n "$1 not running"; [[ ! -f "$1" ]] && echo " [ $1 not found ]" || echo ; }n}nn## headernecho "Service status on ${HOSTNAME} @ $(date)"necho "------------------------------------------------------"nn## Проверка запущена и службаnfor s in $_chklistndon_running "$s"ndonenn## Отправка email уведомлений ##n[[ "$_failed" == "true" && "$_sendemail" == "yes" ]] && { _mess="$_service failed on $HOSTNAME @ $(date)"; n$_mail -s 'Service not found' "$_email" < "${_mess}";n}
Результат выполнения скрипта:nnМы предоставляем услуги администрирования серверов ОС Linux Unix