Здраствуйте. Вот скрипт. Он работает. Но иногда не работает, wvdial пишет NO CARRIER, вернее не пишет никуда, но если запустить вручную то напишет именно это. Лечил выдергиванием модема но потом набрел на команду сброса модема. Она тоже работает. Но вот беда, иногда интернет пропадает и не подключаетсясам никогда. Если из скрипта вытащить строку сброса модема и вручную ввести её, он сбрасывается и вскоре интернет подключается. Почему так и где косяк.
#!/bin/bash
# Дозвонка, перезвон если нет пинга но висит pppd
# сброс модема перед каждым набором
Ppppd=$(ps aux | grep pppd | wc -l) #проверка есть ли демон в процессах?
if [ "$Ppppd" -eq 1 ]
then { # демона нет
date >> /root/log/yota
killall wvdial #если вдруг такая присутствует
echo "Запуск wvdial " >> /root/log/yota
chat -e -t5 '' 'AT+CFUN=1,1' 'OK' </dev/ttyUSB2 >/dev/ttyUSB2 #Сброс модема е171
sleep 10s
wvdial yota 2>> /dev/null #Запуск звонилки
exit 1 #Выход
}
else #присутствует
{
if ping -c 3 ya.ru | grep -e "bytes from" >/dev/null #проверка пинга
then #пинг есть
# echo "пинг есть" >> /root/log/yota
exit 1 #Выход
else PIDpppd=$(pidof pppd) #Пинг пропал или его небыло
kill $PIDpppd
PIDwvdial=$(pidof wvdial)
killall wvdial
echo "Пинга нет!" >> /root/log/yota
# echo " " >> /root/log/yota
exit 1
fi
exit 1
}
fi;
ТС не появлялся на Форуме более полугода по состоянию на 09/09/2019 (последняя явка: 11/01/2019). Модератором раздела принято решение закрыть тему.
--zg_nico