информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsВсе любят медГде водятся OGRы
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / networking
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
Check host alive, how? 17.09.04 07:18  
Автор: IgorMan2 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Как мне узнать живой ли хост? Т.е. меня бы устроило проходят пинги или нет, но результат мне нужен только в 2 варианта да/нет, что бы я потом его мог бы сравнить в скрипте #!/bin/sh. OS FreeBSD 5.1. Как это можно сделать?
Результат команды ping перенаправь во временный файл, в... 17.09.04 09:01  
Автор: sk_lif Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Как мне узнать живой ли хост? Т.е. меня бы устроило
> проходят пинги или нет, но результат мне нужен только в 2
> варианта да/нет, что бы я потом его мог бы сравнить в
> скрипте #!/bin/sh. OS FreeBSD 5.1. Как это можно сделать?
Результат команды ping перенаправь во временный файл, в скрипте проанализируй содержимое файла, потом удали его.
моё imho 17.09.04 17:53  
Автор: dvh Статус: Незарегистрированный пользователь
Отредактировано 17.09.04 17:57  Количество правок: 1
<"чистая" ссылка>
---8<---
#!/bin/sh

if [ $# != 1 ]; then
exit
fi

ping -c 1 $1 2>&1 > /dev/null

case $? in
0) echo $1 is alive
;;
1) echo $1 is dead
;;
esac
---8<---
Как оргинально, так я и сам могу. 17.09.04 09:34  
Автор: IgorMan2 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > Как мне узнать живой ли хост? Т.е. меня бы устроило
> > проходят пинги или нет, но результат мне нужен только
> в 2
> > варианта да/нет, что бы я потом его мог бы сравнить в
> > скрипте #!/bin/sh. OS FreeBSD 5.1. Как это можно
> сделать?
> Результат команды ping перенаправь во временный файл, в
> скрипте проанализируй содержимое файла, потом удали его.

Остановился вот на чем

pid=`ping -c 2 -s 1000 ХХХ.ННН.ЯЯЯ.ССС | grep ms`
if test "X${pid}" = "X" ; then




Конечно пахать на Мерседесе ... не есть правильно 17.09.04 10:54  
Автор: TARASA <Taras L. Stadnik> Статус: Member
<"чистая" ссылка>
> > > Как мне узнать живой ли хост? Т.е. меня бы
Конечно пахать на Мерседесе ... не есть правильно
но посмотри в сторону www.nagios.org
P.S в /usr/ports ... оно есть
достаточно проверять $? 17.09.04 10:54  
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
<"чистая" ссылка>
и кстати grep'ать ms недостаточно, пример:
#!/bin/bash
ping -c 2 -s 1000 x.x.x.x | grep rtt
if [ $? -eq 1 ] ; then
echo "OK";
fi
rtt - че это такое? 17.09.04 11:51  
Автор: IgorMan2 Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> и кстати grep'ать ms недостаточно, пример:
> #!/bin/bash
> ping -c 2 -s 1000 x.x.x.x | grep rtt
> if [ $? -eq 1 ] ; then
> echo "OK";
> fi

rtt - че это такое?

Я не селён в sh, объясни че это значит "$? -eq 1 ", только достаточно подробно, если можно. pls!
rtt - часть строки, которая есть в выводе ping если хост... 17.09.04 12:05  
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
<"чистая" ссылка>
rtt - часть строки, которая есть в выводе ping если хост ответил хотя бы на один запрос, к примеру
ping -c 1 10.0.0.3
PING 10.0.0.3 (10.0.0.3) 56(84) bytes of data.
64 bytes from 10.0.0.3: icmp_seq=1 ttl=64 time=0.243 ms
--- 10.0.0.3 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.243/0.243/0.243/0.000 ms

---

если хост в дауне этой строки не будет
$? - код выхода команды grep, 0 - совпадение найдено, 1 - нет (man grep)
-eq - сравнение для целых чисел (man test)
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 1 s   Design: Vadim Derkach