Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Голосование

Пригодился ли Вам скрипт?

ДА, спасибо!
НЕТ, не интересует.

Автор Тема: Отправка e-mail'а при отсутствии пинга (СМС Оповещенние) [РЕШЕНО]  (Прочитано 23746 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kostryukov

  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: Отправка и-мейла при отсутствии пинга
« Ответ #15 : 31 Мая 2010, 20:32:17 »
почта - cat ~/mailto|sendmail -fusername@gmail.com -v username_to@domen.ru

смс - sendmail -r mail@domen.ru -f mail@domen.ru 38068*******@beeline.ua

ася - cat /home/userhome/scripts/torrent/mailto | centerim -S a -s msg -p icq -t 12345678

Цитировать
Собственно мне надо скрипт, который будет проверять состояние пинга к оборудованию... и если оборудование недоступно, я получу сообщение.
в теме ответ уже был.

как работа будет возобновлятся ? сама собой? или же при отсутсвие пинга нада чтото делать ?
может скрипт какой запускать, и допустим в этом скрипте, после паузы вставить строку, которая будет снова будет проверять пинг, и если он появился, то слать сообщение
у меня можно спросить=)

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #16 : 01 Июня 2010, 11:08:08 »
Цитировать
почта - cat ~/mailto|sendmail -fusername@gmail.com -v username_to@domen.ru

смс - sendmail -r mail@domen.ru -f mail@domen.ru 38068*******@beeline.ua

ася - cat /home/userhome/scripts/torrent/mailto | centerim -S a -s msg -p icq -t 12345678

А если у меня Постфикс стоит? :(



Цитировать
как работа будет возобновлятся ? сама собой? или же при отсутсвие пинга нада чтото делать ?
может скрипт какой запускать, и допустим в этом скрипте, после паузы вставить строку, которая будет снова будет проверять пинг, и если он появился, то слать сообщение
Ну это для информативности.. в большинстве случаев на обьекте просто пропадает свет, но желательно знать по смс.. когда пропало.. и через сколько примерно появилось. Но в случае долгого отсутствия связи надо выезжать. То бишь в скрипте как раз и надо ту строку которая будет проверять через некоторое время повторно наличие пинга.

Оффлайн Fant_nk

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
    • Маленькие программы и утилиты
Re: Отправка и-мейла при отсутствии пинга
« Ответ #17 : 01 Июня 2010, 11:19:30 »
Сам пользуюсь следующим скриптом:
(Нажмите, чтобы показать/скрыть)
Я понимаю, что нагородил большой код, но работает. Надеюсь поможет.
« Последнее редактирование: 01 Июня 2010, 16:46:23 от Владимир Николаевич »

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #18 : 01 Июня 2010, 11:22:00 »
Охохох... если б я еще в программировании шурупил :)
Возможно общими силами сможем видоизменить код, ну и кому-нибудь другому пригодится.
А  можно без сэндмейла обойтись вообще?

Оффлайн Fant_nk

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
    • Маленькие программы и утилиты
Re: Отправка и-мейла при отсутствии пинга
« Ответ #19 : 01 Июня 2010, 11:27:02 »
Охохох... если б я еще в программировании шурупил :)
Возможно общими силами сможем видоизменить код, ну и кому-нибудь другому пригодится.
А  можно без сэндмейла обойтись вообще?
Ну есть другие аналогичные, только сендимэйл завелся с полпинка. В моем коде надо только изменить названия ящика, пароль и сайт. Все это делается в переменных, т.е.
site=www.smallprogs.ru #сайт, который пингуем
from=zzz@gmail.com #от кого письмо отправляем
acc=zzz@gmail.com #аккаунт. На Gmail так, на mail так: user@mail.ru - от кого, а аккаунт username
pswd=qwerty #пароль
to=yyy@mail.ru #на какой ящик слать уведомления
smtp=smtp.gmail.com #сервер отправки сообщений

Оффлайн kost2000

  • Участник
  • *
  • Сообщений: 179
    • Просмотр профиля
Re: Отправка и-мейла при отсутствии пинга
« Ответ #20 : 01 Июня 2010, 11:59:12 »
может кому-то будет интересно:
я сделал отправку уведомления через фильтры Яндекса на мобильный телефон (оператор мегафон), посредством создания почтового ящика на мегафоне

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #21 : 01 Июня 2010, 12:03:46 »
К сожалению у меня не мегафон :)

И на сервере установлен не sendmail :( Надо с Postfix что-то придумать.

Оффлайн Fant_nk

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
    • Маленькие программы и утилиты
Re: Отправка и-мейла при отсутствии пинга
« Ответ #22 : 01 Июня 2010, 12:09:59 »
К сожалению у меня не мегафон :)

И на сервере установлен не sendmail :( Надо с Postfix что-то придумать.
У тебя нет пароля рута?
Сам не могу организовать отправку теле2, ящик не создается, может кто знает...

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #23 : 01 Июня 2010, 12:18:16 »
Есть доступ.. но сендмейл не хочу ставить, так как ранее с ним работал.. и все же слез на Постфикс, атк как он более благоприятный!

Пользователь решил продолжить мысль [time]Tue Jun  1 11:30:22 2010[/time]:
if ping -c 1 hostname | grep '100% packet loss'> /dev/null
then
echo "server is down" | mail -s 'www.server.net' TrEK@mail.ru
fi

Подскажите, это надо сделать файл с этим скриптом исполняемым,и вначале дописать #!/bin/sh ?

А как сделать если после сообщений о поломке появится связь... чтоб быть проинформированым про это раз?
« Последнее редактирование: 01 Июня 2010, 13:33:13 от TrEK »

Оффлайн kost2000

  • Участник
  • *
  • Сообщений: 179
    • Просмотр профиля
Re: Отправка и-мейла при отсутствии пинга
« Ответ #24 : 01 Июня 2010, 14:26:52 »
К сожалению у меня не мегафон :)
у мтс есть такаяже услуга, возможно и у остальных операторов есть ;)
« Последнее редактирование: 01 Июня 2010, 14:36:10 от kost2000 »

Оффлайн Fant_nk

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
    • Маленькие программы и утилиты
Re: Отправка и-мейла при отсутствии пинга
« Ответ #25 : 01 Июня 2010, 14:45:31 »
#!/bin/sh или #!/bin/bash
sudo chmod +x file.sh

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #26 : 01 Июня 2010, 15:33:43 »
К сожалению у меня не мегафон :)
у мтс есть такаяже услуга, возможно и у остальных операторов есть ;)
у меня украинский оператор. :) Там вроде бы такого нету.. по крайней мере я не нашел!

Пользователь решил продолжить мысль 01 Июня 2010, 11:49:36:
#!/bin/sh или #!/bin/bash
sudo chmod +x file.sh

понял... а вот если мне надо пинговать несколько обьектов, тогда:
if ping -c 2 192.168.1.1 | grep '100% packet loss'> /dev/null
if ping -c 2 192.168.1.2 | grep '100% packet loss'> /dev/null
if ping -c 2 192.168.1.3 | grep '100% packet loss'> /dev/null
if ping -c 2 192.168.1.4 | grep '100% packet loss'> /dev/null
if ping -c 2 192.168.1.5 | grep '100% packet loss'> /dev/null
if ping -c 2 192.168.1.6 | grep '100% packet loss'> /dev/null
then
echo "server ХХХ" | mail -s 'down' TrEK@mail.ru
fi


Вопрос, как в письме указать какой именно сервер недоступен?

Пользователь решил продолжить мысль 01 Июня 2010, 13:56:18:
задать айпишки переменными надо ?
« Последнее редактирование: 01 Июня 2010, 16:47:13 от Владимир Николаевич »

Оффлайн Fant_nk

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
    • Маленькие программы и утилиты
Re: Отправка и-мейла при отсутствии пинга
« Ответ #27 : 01 Июня 2010, 16:04:37 »
if ping -c 1 192.168.1.1 | grep '100% packet loss'> /dev/null
then
echo "server 1" | mail -s 'down' TrEK@mail.ru
fi
if ping -c 1 192.168.1.2 | grep '100% packet loss'> /dev/null
then
echo "server 2" | mail -s 'down' TrEK@mail.ru
fi
.......
Хотя я бы сделал что-то вроде того:
#!/bin/bash
for i in `seq 1 6`;
do
    if eval "ping -c 1 192.168.1.$i"; then
    else
         echo "server 192.168.1.$i" | mail -s 'down' TrEK@mail.ru
    fi
done
« Последнее редактирование: 01 Июня 2010, 16:50:28 от Владимир Николаевич »

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Отправка и-мейла при отсутствии пинга
« Ответ #28 : 01 Июня 2010, 16:49:02 »
Цитировать
#!/bin/bash
for i in `seq 1 6`;
do
    if eval "ping -c 1 192.168.1.$i"; then
    else
         echo "server 192.168.1.$i" | mail -s 'down' TrEK@mail.ru
    fi
done

Хорошо, но если у меня не из одного диапазона:
(Нажмите, чтобы показать/скрыть)
и т.д.

Тогда цикл с заданым шагом не пройдет.
Значит пробовать  :
if ping -c 2 192.168.180.1 | grep '100% packet loss'> /dev/null
then
echo "server 1" | mail -s 'down' TrEK@mail.ru
fi
if ping -c 1 192.168.180.81 | grep '100% packet loss'> /dev/null
then
echo "server 2" | mail -s 'down' TrEK@mail.ru
fi

п.с. > /dev/null Это что за обнуление?
« Последнее редактирование: 01 Июня 2010, 16:54:19 от Владимир Николаевич »

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Отправка и-мейла при отсутствии пинга
« Ответ #29 : 01 Июня 2010, 16:52:02 »
ТС категорически не хочет учить матчасть )))
задача тривиальна, и все данные для решения есть в этом топике, осталось подумать головой и собрать воедино ;)

 

Страница сгенерирована за 0.021 секунд. Запросов: 24.