서버 건강 상태 검사 스 크 립 트

일상적인 작업 에서 저 희 는 정기 적 으로 각 서버 의 상 태 를 검사 합 니 다. 이 셸 스 크 립 트 시스템 을 통 해 매일 서버 의 검사 결 과 를 메 일 로 정기 적 으로 보 낼 수 있 습 니 다. 이 스 크 립 트 는 정식 환경 에서 안정 적 으로 실 행 됩 니 다.
    검 측 결 과 를 메 일 로 보 내야 하기 때문에 먼저 서버 에서 sendmail 서 비 스 를 시작 하고 자동 시작 으로 설정 한 다음 에/etc/mail. rc 에 해당 하 는 파 라 메 터 를 설정 해 야 합 니 다./etc/mail. rc 에 있 는 파 라 메 터 는 다음 과 같 습 니 다.
    set from = 메 일 주소
    set smtp = smtp 서버 주소
    set smtp - auth - user = 메 일의 사용자 이름
    set smtp - auth - password = 메 일의 비밀번호
    set smtp - auth = login 설정 로그 인 방법
    텍스트 server list 는 다음 형식 으로 검사 할 서버 를 기록 합 니 다.
    서버 이름     서버 IP
    서버 건강 상태 검사 스 크 립 트 는 다음 과 같 습 니 다.
   #!/bin/bash
   #       
   source /home/jack/.bash_profile
   #           
   list=/home/jack/shell/monitor/serverlist
   ip=`awk '{print $2}' $list `
   log=/home/jack/shell/monitor/logs/check_$(date +%F).log
   subject="         "
   if [ `/usr/bin/sudo ls  /var/spool/mqueue/|wc -l` -ge 0 ];then
   sudo rm -rf /var/spool/mqueue/*
   fi
   #      
   >$log
   date|sed 's@CST@@g' >>$log
   for i in $ip
   do
   ping -c 4 $i >/dev/null 2>&1
   if [ $? -eq 0 ];then
   echo "`cat $list|grep $i|awk '{print $1}'`     !" >>$log
   else
   echo "`cat $list|grep $i|awk '{print $1}'`     !" >>$log
   fi
   done
   /bin/mail -s $subject  
  


좋은 웹페이지 즐겨찾기