Magog 10.05.2011 21:57

СкриптыСкрипт для запуска приложении при появлении интернета

Появился у меня какой-то косяк со временем. Постоянно после ребута на 3 часа вперед бежит. Сначала руками правил. Синхронизировал с часами в биосе. Такая же фигня. Лень было разбираться и поэтому поставил ntp в надежде, что все решится...И зря. запуск ntp-client в runlevel default сообщили мне, что мой вайфай цепляется на ноуте позже и запускать ntp пришлось каждый раз при загрузке ручками. В итоге мне это надоело и был нарыт такой скрипт.

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash
inet=10;
#wait for internet connection
while [ $inet -ne 1 ] ; do
if (ping -c 2 -q www.ya.ru | grep -q "0% packet loss" ) ; then
echo "Internet up";
inet=1;
continue;
else
echo "Internet down"
fi
sleep 10
done
// тут пишите свои команды. sudo /etc/init.d/ntp-client start.



Теперь при появлении интернете время синкается автоматом. Хочу проапгрейдить до сброса значения при отключении интернета, но потом.


Тэги: Gentoo ntp скрипт
+ 1 -
Похожие Поделиться

konkere 18.05.2011 11:40 #
может лучше пинговать www.ru?
imn 18.05.2011 11:43 #
обычно пытаются пинговать свой роутер, а в условиях данной задачи имеет смысл пинговать ntp-сервер
konkere 18.05.2011 11:46 #
Зачем мне свой роутер пинговать? Я и так знаю, что он работает вне зависимости от наличия соединения с интернетом.
imn 18.05.2011 11:41 #
ping -c 2 -q 192.168.3.100 | grep "0% packet loss"
2 packets transmitted, 0 received, 100% packet loss, time 999ms

90% тоже успешно грепнится
kstep 18.05.2011 22:45 #
Равно как и 10%, 20% и т.д. Грепать надо " 0% packet loss", с пробелом перед 0. Ваш К.О.
mealsforall 27.10.2011 18:42 #
fping вообще-то как раз для этого. :)
bjaka_max 18.05.2011 11:55 #
время в биосе по GMT стоит? если местное переставьте по GMT - самый правильный вариант
severny 22.05.2011 21:08 #
Подтверждаю.
Сам сталкивался с подобным при настройке локального ntp-сервера.
Задаётся командой hwclock -w -u
Sas 24.05.2011 15:23 #
Читал что еще такая трабла возникает когда винда в дуалбуте стоит)
Denis 18.05.2011 14:51 #
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
#!/bin/bash

while true ; do
	if ping -c 1 192.168.0.1 ; then
		break
	fi

        sleep 10
done
xmessage "Inet OK" # or whatever you want
Sov1et 18.05.2011 17:06 #
Не изобретаем велосипедов ведь давно есть fping, ориентированный на работу из скриптов
NutipA 18.05.2011 22:19 #
Может уже тогда не нужно и пинговать при помощи fping? Есть очень хороший инструмент nc.
K900 18.05.2011 17:24 #
Репост:
1
2
while true; do ping -c1 google.ru && break || sleep 10; done
echo "Link up!"
aurdino 20.05.2011 11:11 #
Если для Debian систем, тогда для этих случаем специально придумали if-up.d скрипты:
1
2
3
4
5
6
7
cd cd /etc/network/if-up.d
ls
avahi-autoipd
avahi-daemon
ntpdate
upstart
wpasupplicant



sumboid 27.10.2011 13:30 #
Что за костыли? openrc умеет и в зависимости и в приоритеты. Алсо, сетку я руками поднимаю и все равно ntp синхронизируется.