Создать скрипт bash для проверки связи

Установите пакетexo-utils:

apt install exo-utils

Из терминала:

exo-preferred-applications

Щелкните Утилиты , в разделе файловый менеджер замените Nemo вашим предпочтительным файловым менеджером.

0
26.07.2019, 16:58
2 ответа

Если использование внешней программы приемлемо, вы можете использовать монитор -ip . Он написан на C и достаточно настраиваемый. В отличие от скрипта bash, который зацикливается и постоянно выполняется pingили задания cron, он может выполнять 100 пингов в секунду, потребляя при этом менее 1% процессорного времени.

Например, вы можете использовать что-то вроде этого:

sudo./monitor-ip --interval 5.0 --missed-max 20 --reset -- 1.2.3.4 \
        bash -c 'mail -s "Server Down!" myaddress@xxxx.com <<< "$MONITOR_NOTIFY_REMOTE_ADDRESS unreachable"'

Это будет отправлять эхо-запросы на 1.2.3.4с интервалом в 5 секунд, пока не будет получено 20 последовательных эхо-запросов. (1 минута простоя ), затем отправить электронное письмо на адрес myaddress@xxxx.com. Он будет продолжать отправлять электронные письма с интервалом в 1 минуту, пока условие статуса не будет разрешено.

Полное раскрытие :Я написал монитор -ip .

0
28.01.2020, 05:04

Приведенный ниже сценарий отлично работает для описанных ниже сценариев

 #!/bin/bash
    echo "enter the hostname or IP of the host"
    read h
    ping -c1 $h
    if [ $? != 0 ]
    then
    sleep 6
    ping -c1 $h
    if [ $? != 0 ]
    then
    sleep 6
    ping -c1 $h
    if [ $? != 0 ]
    then
    echo "host $h is not pinging  and its not reachable"
    mail -s "host $h is not pinging  and its not reachable" emailid </dev/null
    else
    echo "host $h is pinging"
    fi
    fi
    fi
-1
28.01.2020, 05:04

Теги

Похожие вопросы