PING из Raspberry с коммандой?

Тема в разделе "Raspberry Pi", создана пользователем Vitalij, 27 июн 2018.

  1. Vitalij

    Vitalij Нерд

    Привет, очень нужна помощь ваша!

    Мне надо запустить на малинке пинг цикл одного из устройств в тойже сети и при остановки пинга чтобы малинка отправила комманду которая выглядит как ссылка, т.е. пройти по ссылке.
     
  2. Igor68

    Igor68 Гуру

    Например?
     
  3. Mitrandir

    Mitrandir Гуру

    Ping + grep+wget

    Завернуть в скрипт в цикле

    Запустить в фоне
     
  4. Igor68

    Igor68 Гуру

    wget - это скачать, то, что по ссылке. А если не пингуется значит устройство не в сети! (если нет запрета на ping)
     
  5. Mitrandir

    Mitrandir Гуру

    На основе кода Igor68 из соседней темы

    Код (Bash):


    While  [1 le 10] do
    Do
      pd=$(ping -c 1 ya.ru)
      ppd=$(echo $pd | grep "errors" | awk '{print length}')
      if( ((ppd > 1)) )
      then
        wget router_url_for_reser
      else
     
      fi
      sleep 60
    Done

     
     
  6. Mitrandir

    Mitrandir Гуру

    Пингуем один юрл wgetom дергаес другой.

    Походу у ТС есть магический юрл который ребутает повисший роутер
     
  7. Igor68

    Igor68 Гуру

    Это понятно, но если сети нет не сработает ни ping ни wget (кстати только для web страниц) ни telnet ни ssh ни... много чего - всё!
     
  8. Vitalij

    Vitalij Нерд

  9. Vitalij

    Vitalij Нерд

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

    Vitalij Нерд

    ставлю в локальную сеть дополнительно малинку которая следит за сервером, когда он зависает она отправляет данную комманду на устройство в тойже сети.
     
  11. Mitrandir

    Mitrandir Гуру

    Замени ya.ru на ИП камеры
     
  12. Vitalij

    Vitalij Нерд

    Для понимания имеется система парковки сраспознаванием номеров автомобиля, сам движок крутится на сервере, он бывает зависает и в момент зависания сервера (движка) надо отправить комманду на камеру которая откроет шлагбаум до восстановления.
     
  13. Vitalij

    Vitalij Нерд

    скорее на ИП сервера а не камеры?
     
  14. Igor68

    Igor68 Гуру

    Если только программа-сервер зависает то можно, но ping при этом не исчезнет. Если система зависнет, то только выключение.
    Правильно было бы контролировать сам сервер(программу). Можно так же и количество памяти непрерывно по сети. И в случае чего перезапускать или ещё что. Это не сложно. И реализовать реально. А если ping пропадёт, то только вручную. Наличие открытого порта (конкретно программы-сервера) лучше с помощью NetCat (nc в командной строке малины наберите). Попробуйте проверить порт ну к примеру 80.
    Можете разобрать тут что-нибудь:
    http://forum.amperka.ru/threads/и-далее.13978/
    Там как раз есть контроль за сервером SSH(порт 22). Вам как понимаю надо порт 80 (http).
     
  15. Vitalij

    Vitalij Нерд

    Это уже все сложнее становится. Мне пинг вполне устроит, так как когда зависает система он не пингуется, также бывает проблема с просто элекричеством и сервер отключается, в таком случае надо чтобы шлагбаум поднялся.
     
  16. Mitrandir

    Mitrandir Гуру

    Если пропало электричество, кто поднимет шлакбаум? ИБП стоит у привода или смска негру сторожу поступит?
     
  17. Igor68

    Igor68 Гуру

    Тогда как Mitrandir сказал (пост 5). Оформите в скрипт и запустите с
    ./script.sh &
    с символом &
    Можете прописать и в /etc/rc.local но сначала надо отладить работу.
     
  18. Vitalij

    Vitalij Нерд

    Электричество на отдельных автоматах, сервер отдельно от шлагбаума с камерой. Поэтому и встает такойвопрос, чтобы когда сервер обесточен парковка была открыта.
     
  19. parovoZZ

    parovoZZ Гуру

    сто пудово так. Тут надо юзать SNMP.
     
  20. Vitalij

    Vitalij Нерд

    Гуру, помогите нубу, как-то структурузируйте мои действия, в сервер углублътся не надо, мне просто ххватает пинг и команду в момент пропадания пинг восстановления.

    Спасибо.