Иногда при отключении интерфейса, в моем случае это OpenVPN, не происходит переподключение. Скрипт позволяет проверять пинг и перезапускать службу. Можно его использовать не только для перезапуска службы OpenVPN но и для других целей.
Создаем файл /etc/resovpn например с помощью редактора nano
nano /etc/resovpn
вставляем следующее содержимое
#!/bin/bash # часы date_time="`date +%H:%M:%S`" # дата date="`date +%d-%m-%Y`" #Тестируемый адрес testip="172.16.0.1" kol=$(/bin/ping -c 4 $testip | grep "received" | awk '{print $4}') if [ $kol == 0 ] then sleep 10 kol=$(/bin/ping -c 4 $testip | grep "received" | awk '{print $4}') if [ $kol == 0 ] then # перезапускаем службу, если Вам надо другую то изменить следующую строку sudo service openvpn restart # пишем в лог перезапуски, если не надо, то комментируем строку sudo echo $date $date_time Нет пинга. Начат перезапуск. /var/log/restartinet.log exit 0 fi fi
делаем файл исполняемым
chmod +x resovpn
добавляем запуск в крон, выполняем crontab -e и добавляем в конец запуск созданного скрипта, в примере каждые 5 минут
*/5 * * * * /etc/resovpn
на этом настройка закончена
Проверяем пинг и при отсутствии перезапускаем службу OpenVPN