IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Пингвинятник (ОС *NIX) (http://www.imho.ws/forumdisplay.php?f=76)
-   -   как в скрипте определить, подключен к и-нету или нет? (http://www.imho.ws/showthread.php?t=47641)

Drakosha 03.01.2004 22:38

как в скрипте определить, подключен к и-нету или нет?
 
надо сделать так: скрипт определяет например можно ли сделать ping cnn.com и если нет запускает подсоединение, потом запускаем етот скрипт в cron

ideas?

Saruman 03.01.2004 22:43

Drakosha
на каком языке скрипт-то?

Drakosha 03.01.2004 23:15

Цитата:

Первоначальное сообщение от Saruman
Drakosha
на каком языке скрипт-то?

так я его писать буду... bash, python, tcsh....

noname 04.01.2004 14:47

ну а вчем проблема ??
на пьяную голову можно вот так


#!/bin/sh
ip=$1

i=`ping $ip -c 1 -i 1 -q |grep packet |awk '{print $7}'|sed 's/[^0-9]//g'`
if [[ $i != 100 ]]
then echo OK
else echo "ISP MUSTDIE"
fi

usage
%sh probeping xx.xx.xx.xx-ipofmydearISP

вместо echo OK |echo "ISP MUSTDIE"
вставляешь свой скрипт поднимаюший соединение или что там есть

правдa тестирование выяснило некоторые шероховатости , но я думаю как пример сойдет :))

ну и в конце правишь crontab на нужное тебе время.


а это в помошь начинаюшим Adminam
http://gazette.linux.ru.net/rus/arti...abs-guide.html

tricker 04.01.2004 14:59

Цитата:

Первоначальное сообщение от noname
а это в помошь начинаюшим Adminam
http://gazette.linux.ru.net/rus/arti...abs-guide.html

ух ты... ценный мануал...и очень свеженький, почти горячий! :) Спасибо! я хоть и не админ, но пригодится однозначно!

Drakosha 04.01.2004 15:17

спасибо за идею, конечный варинат выложу тут

Drakosha 05.01.2004 23:21

here it is:

#! /bin/bash

res=`ping google.com -c 1 -q -W 2 -w 2 | grep '1 packets transmitted, 1 received, 0% packet loss' | wc -l`
#echo ">>> $res"
if [ "$res" -eq "1" ]
then echo OK
else echo "ISP MUSTDIE"
fi

aivs 20.01.2004 14:43

А какбы это в цикл завернуть
чтобы сидел этот скрипт и например каждые 30 секунд проверял есть соединение или нет

Drakosha 20.01.2004 20:06

у меня ето сидит в cron:

crontab -l
...
0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /sbin/probeconn.bash
...

aivs 20.01.2004 22:58

я в этих делах не разбараюсь
может выложишь полный скрипт
в crone который висит
и как сделать чтоб он каждые 30 сек проверял соединение

Drakosha 21.01.2004 00:09

насколько я знаю в можно делать минимум каждую минуту. Для етого добавляеш строчку:
* * * * * script_to_run
у меня стоит скрипт который я туу запостил, только вместо 'echo "ISP MUSTDIE"' напиши вызов скрипта который подключается к и-нету

aivs 21.01.2004 08:30

куда сторочку добавить
в /etc/rc.d/init.d/crond?

Doctorrr 21.01.2004 10:39

Нет.
Созаешь/редактируешь файл заданий - crontab, например:

# mcedit /etc/crontab

Добавляешь туда свое задание, а затем -

# crontab /etc/crontab

aivs 21.01.2004 13:54

я вот не понял как там правильно дату указать
мне нужно чтобы он проверял наличие соединения каждый день каждую минуту
напишите пожалуйста это

Doctorrr 21.01.2004 14:01

aivs


* * * * * /full/path/to/your/script.sh


Это - каждую минуту, кадый день.

aivs 21.01.2004 15:07

неработает
[root@localhost root]# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/etc/crontab installed on Wed Jan 21 14:48:20 2004)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
* * * * * /root/Desktop/connect
[root@localhost root]#

Добавлено через 12 минут:
может поможите мне написать непрерывный цикл определения коннекта с интервалом 30 сек
и по возможности чтобы велся лог в файл

Drakosha 22.01.2004 08:16

по идее надо сделать 'crontab -e' и вставить ету строчку

aivs 23.01.2004 11:50

чето с crontab у меня проблемы
может подкинете какой нибудь манул по циклам в bash

noname 23.01.2004 13:28

ну и что будет цикл ? , процессор грузить без пользы ?

не лучше ли разобраться с crontab ?

man crontab
man cron

aivs 23.01.2004 15:51

ну тогда помогите
вот мой /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
* * * * * /root/Desktop/connect
далее делаю crontab -l мне выдается
[root@localhost root]# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/etc/crontab installed on Wed Jan 21 14:48:20 2004)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
* * * * * /root/Desktop/connect
[root@localhost root]#

И все никаких действий не наблюдается

noname 23.01.2004 20:29

уже было сказано man crontab

/etc/crontab -системный crontab

создать свой crontab file #cronatb -e


далее например как советовал Drakosha

0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,
54,57 * * * * /sbin/probeconn.bash

подробности man crontab

aivs 05.03.2004 08:41

А можноли сделать так чтоб скрипт запускался каждый день с 2 ночь до 9 утра каждую минуту?
А в остальное время не запускался.

Drakosha 05.03.2004 09:06

Цитата:

Первоначальное сообщение от aivs
А можноли сделать так чтоб скрипт запускался каждый день с 2 ночь до 9 утра каждую минуту?
А в остальное время не запускался.

да ПРАКТИЧЕСКИ ВСЕ можно в cron сделать....
man crontab
man cron
....как уже раз 20 говорилось

helldomain 07.03.2004 18:53

Interesno, a naf pingom eto delat? Ili interfeis zakonneten wsegda? Ya-bi grepal i checkal rezultat raboti ifconfig ili pidof pppd.

Drakosha 08.03.2004 10:35

Цитата:

Первоначальное сообщение от helldomain
Interesno, a naf pingom eto delat? Ili interfeis zakonneten wsegda? Ya-bi grepal i checkal rezultat raboti ifconfig ili pidof pppd.

ага интерфеис законнетен всегда. к тому же если pppd пашет не факт что можно по сайтам ходить. А так 100%!

helldomain 08.03.2004 15:06

Ti toje ne praw. Esli ping prohodit, eto eshe toje ne znachit, chto mojno lazit po saitam.

Drakosha 08.03.2004 19:20

Цитата:

Первоначальное сообщение от helldomain
Ti toje ne praw. Esli ping prohodit, eto eshe toje ne znachit, chto mojno lazit po saitam.

ок....
Какие будут предложения? Например что-то вроде

links -dump google.com | grep images | wc -l

и если есть строки то ок?

helldomain 24.03.2004 05:15

A mojet lynx a ne links?

Drakosha 24.03.2004 18:00

Цитата:

Первоначальное сообщение от helldomain
A mojet lynx a ne links?

both OK :)

Doctorrr 24.03.2004 18:17

helldomain
Есть и links тоже ;)

filonovd 24.03.2004 22:11

Цитата:

Первоначальное сообщение от Drakosha
ок....
Какие будут предложения? Например что-то вроде

links -dump google.com | grep images | wc -l

и если есть строки то ок?

Если соединение постоянное (кабель, ДСЛ, локалка) то в скрипте нет смысла. Все равно ему поднимать нечего.
А если соединение модемное, то каждую минуту гугла грузить - только трафик создает лишний. Мне кажется, что пинг вполне достаточен для данной задачи. Если пинги ходят, а веб не работает, то дело скорее всего не в соединении.

helldomain 29.03.2004 11:04

Wozmojno i tak.


Часовой пояс GMT +4, время: 16:40.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.