Переехали в новый офис, а тут у провайдера периодически бывают проблемы. Авторизация и доступ к интернетам происходит через pppoe.
После того как провайдер рвал сессию из-за проблем - pppd умирал. И для того, чтобы в офисе появился интернет, после починки провайдером самого себя - сотрудникам приходилось перезагружать сервер.
Пришлось чинить, дабы они так его не насиловали :)
В AltLinux (юзается 7.0 Centaurus), судя по всему существует проблема, связанная с тем, что несмотря на опции persist и maxfail 0 (в etcnet юзаются параметры PPPPERSIST=on и PPPMAXFAIL=0 в файле options, который находится в директории интерфейса) - не работают.
Т.е. pppd берет и умирает. И никто его не пытается перезапустить. В Debian, кстати, такого не замечал, там всё ок.
Решением оказался вот такой костыль, найденный в интернетах (Он смотрит, есть ли pid файл процесса pppd, если нет - перезапускает интерфейс. Запускается раз в 5 минут по крону)
#!/bin/sh [ -f /var/run/ppp1.pid ] || /sbin/ifdown ppp1;/sbin/ifup ppp1
*/5 * * * * root /usr/local/bin/ppp.sh