Похоже, что без костыля не обойтись пока что. Итак - собственно КОСТЫЛЬ (помещенный в автозагрузку, разумеется) :
#!/bin/sh
PINGRESOURCE="google.com"
CHECKTIME=15
LINECON=0
until [ $LINECON -eq 5 ]
do
ping -c 3 ${PINGRESOURCE}
sleep ${CHECKTIME}
if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
sleep ${CHECKTIME}
sudo /etc/init.d/network-manager restart
sleep 5
LINECON=$(( $LINECON + 1 ))
fi
done
Сие костылие обеспечивает подключение при обрыве соединения в течении 5-ти попыток, если , например, кабель был не включен, или вы сами отключили себе интернет принудительно. В случае обрыва сессии провайдером работает четко, вне зависимости от последствий. В принципе, в строке "until [ $LINECON -eq 5 ]" цифра "5" обозначает количество попыток соединиться, если заведомо не подключен кабель или вы вообще не собираетесь использовать интернет, ну, или количество обрывов сессий, которые делает подряд провайдер... Как-то так..
Пользователь решил продолжить мысль 15 Февраля 2013, 03:41:13:
Немного доработал костылик. Теперь, в случае удачного пересоединения, количество оставшихся попыток меняться не будет. (Вдруг вы пару-тройку недель комп перезагружать не собираетесь

)
#!/bin/sh
PINGRESOURCE="google.com"
CHECKTIME=15
LINECON=0
until [ $LINECON -eq 5 ]
do
ping -c 3 ${PINGRESOURCE}
sleep ${CHECKTIME}
if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
sleep ${CHECKTIME}
sudo /etc/init.d/network-manager restart
sleep 5
LINECON=$(( $LINECON + 1 ))
ping -c 3 ${PINGRESOURCE}
sleep 10
if (! ping -c 3 ${PINGRESOURCE} >/dev/null 1) then
LINECON=$(( $LINECON - 1 ))
fi
fi
done
Думаю, что больше дорабатывать там нечего. Как костыльное решение - очень годно.