본문 바로가기

스크립트

DNS(named) 서비스를 모니터링하는 스크립트

반응형

DNS(named) 서비스를 모니터링하는 스크립트

dns.sh 스크립트 생성

vim dns.sh
#!/bin/bash

# DNS 서비스 모니터링 및 자동 재시작 스크립트

INTERVAL=3  # 재시작 간격 (초)
LOG_FILE="/var/named/log/dns.txt"  # 로그 파일 경로
NAMED="/usr/sbin/named"  # named 실행 파일 경로

while true
do
    # named 프로세스 확인
    CHK=`ps -ef | grep $NAMED | grep -v grep`

    if test -z "$CHK"
    then
        # named 프로세스가 실행 중이지 않을 경우

        # 현재 날짜 및 시간 기록
        date >> $LOG_FILE

        # named 프로세스 상태 로그
        ps -ef | grep named >> $LOG_FILE

        # DNS 프로세스 재시작 메시지 기록
        echo "Restarting DNS Process." >> $LOG_FILE

        # named 프로세스 재시작
        $NAMED

        # 재시작 후 named 프로세스 상태 로그
        ps -ef | grep named >> $LOG_FILE

        # 포트 53 확인하여 DNS 서비스 상태 로그
        netstat -na | grep 53 >> $LOG_FILE
    fi

    sleep $INTERVAL
done

위의 스크립트는 DNS 서비스를 모니터링하고, named 프로세스가 실행되지 않을 경우 자동으로 재시작하는 기능을 수행합니다. 스크립트는 지정된 간격으로 named 프로세스의 상태를 확인하고, 프로세스가 실행 중이지 않을 때 로그 파일에 상태 정보를 기록하고 named 프로세스를 재시작합니다. 재시작 후에는 named 프로세스의 상태와 포트 53의 상태도 로그 파일에 기록됩니다.

 

728x90
반응형

'스크립트' 카테고리의 다른 글

[스크립트] dns2.sh  (0) 2014.03.10
dns-check.sh 스크립트  (0) 2014.03.10
linux system backup 스크립트  (0) 2014.03.10
이더넷 채널 본딩하기(Bonding)  (0) 2014.02.28
액세스 로그 백업 스크립트  (0) 2013.12.24