Linux Centos 6: 핑이 손실된 후 네트워크 서비스 다시 시작

Linux Centos 6: 핑이 손실된 후 네트워크 서비스 다시 시작

내 운영 체제는 Linux Centos 6ping이 손실된 후 네트워크 서비스를 다시 시작합니다.

service network restart 기본적으로 다른 IP 주소가 핑되는지 감지하고 매분마다 실행하는 감시자 또는 스크립트가 필요합니다 .

여러 가지 이유로 네트워크를 다시 시작해야 합니다.

답변1

이 스크립트를 파일에 저장하고 실행 가능하게 만듭니다. 그런 다음 cronjob에서 실행하십시오.

즐겨 사용하는 편집기를 열고 다음 스크립트를 복사하세요.

#!/bin/bash

# cron script for checking lan connectivity

# Ping count is set aggressively to 1, increase depending what you want.
PING_COUNT=1
#I'm assuming ping is installed.
PING="/bin/ping"


#Find the gateway IP address
GATEWAY_IP=`ip route | grep default | cut -d " " -f 3`
# ping test
$PING -n -c "$PING_COUNT" "$GATEWAY_IP" &>/dev/null

if [ "$?" -ge 1 ]
then
    # This will log a message in system log (see manpage).
    logger "Network access DOWN"

    service network restart
else
    logger "Network access OK"
fi

파일을 저장하고 이름을 지정하십시오.체크랜드예를 들어. cmdline을 입력하여 실행 가능하게 만듭니다.

chmod +x checklan

루트로 또는 sudo를 사용하여 파일을 /usr/local/bin으로 이동합니다.

mv checklan /usr/local/bin

sudo 또는 root를 사용하여 /etc/cron.d에서 새 파일을 엽니다.

vi /etc/cron.d/netcheck

~에 따르면 다음 줄을 복사합니다.

*/10 * * * * root /usr/local/bin/checklan

입력하여 변경사항 저장:엑스

cron을 루트로 다시 시작하거나 sudo를 사용하여 다시 시작합니다.

service crond restart

그러면 스크립트가 10분마다 실행되어야 합니다. 참고: 구문을 이해하려면 인터넷에서 cron에 대해 읽어보세요. 분당 속도를 높일 수 있습니다.

/var/log/messages 또는 /var/log/syslog를 확인하여 제대로 작동하는지 확인하세요.

tail -f /var/log/messages

작동하면 다음과 같은 내용이 표시됩니다.

Apr  1 20:04:01 <hostname> logger: checklan OK

관련 정보