Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

Re: lug-bg: cron.pid


  • Subject: Re: lug-bg: cron.pid
  • From: Georgi Chorbadzhiyski <gf@xxxxxxxxxxx>
  • Date: Thu, 16 Feb 2006 22:40:53 +0200
  • Delivered-to: lug-bg-list@xxxxxxxxxxxxxxxxxx
  • Delivered-to: lug-bg@xxxxxxxxxxxxxxxxxx

Georgi Hristozov wrote:
Здравейте! На машината си имам Slackware-current и се опитах да сложа пакета за мониторинг на услуги Monit. Всичко си работеше на 6 докато на пробвах да го конфигурирам да наблюдава crond. За това ми трябва /var/run/cron.pid, който е стандартен за crond. Да, но този файл го няма никъде из системата, а ми трябва за да може да се разбере дали работи процеса. Някой има ли си идея как мога да накарам crond да си прави собствен pid файл? Ако ми е само за да разбера PID-а на процеса, няма проблем да ползвам нещо такова (е, малко по - сложно :) ):
pidof crond > /var/run/cron.pid
Но това не е пълноценно решение за мониторинг. Пакета, който ползвам е dcron. Благодаря предварително!

От пет години ползвам crond да следи дали монит не е спрял :) А иначе ползвам
Dillon's cron от 97-ма и досега никога не е спирал или умирал. Вярно,
че не пише pid файл, но пък никога не се е налагало да го пускам защото
е умрял. И аз когато започнах да пускам монит ме беше прихванало всичко
да следя, но след време ми мина и сега следя само наистина важните ми
услуги (sshd, и няколко други демона...). С други думи, ако чак толкова
държиш да следиш crond с монит, направи си един rc файл от сорта на:

/etc/rc.d/rc.crond

#!/bin/sh

crond_start() {
  if [ -x /usr/sbin/crond ]; then
    if [ "$(/sbin/pidof crond)" = "" ]; then
        echo "Starting crond:  /usr/sbin/crond"
        /usr/sbin/crond -l10 >>/var/log/cron 2>&1
        /sbin/pidof crond > /var/run/crond.pid
     else
        echo "crond is already running."
        /sbin/pidof crond > /var/run/crond.pid
     fi
  fi
}

# Stop crond:
crond_stop() {
  killall -v crond
}

# Restart crond:
crond_restart() {
  crond_stop
  sleep 1
  crond_start
}

case "$1" in
'start')
  crond_start
  ;;
'stop')
  crond_stop
  ;;
'restart')
  crond_restart
  ;;
*)
  echo "usage $0 start|stop|restart"
esac

и си го следи с monit:

check crond with pidfile /var/run/crond.pid
        start = "/etc/rc.d/rc.crond start"
        stop = "/etc/rc.d/rc.crond stop"
        checksum /usr/sbin/crond
        timeout(3,6)
        alert monit@xxxxxxxxxxx { restart, timeout }
        alert root@xxxxxxxxxxx on { checksum }

--
Georgi Chorbadzhiyski
http://georgi.unixsol.org/


  • Във връзка с:
  • Относно:
    • lug-bg: cron.pid
      • Изпратено от: Georgi Hristozov <lists@xxxxxxxxxxxx>

 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.