1

Temat: Sprawdzenie czy host jest dostępny - skrypt

Hejka

Skrypt włączający fizyczny przekaźnik, działa elegancko, włączam i wyłączam maszyne o IP 192.168.200.0 bez problemów.
( dokładnie wybudzam i usypiam maszynę )

Potrzebuje teraz do skryptu dodać sprawdzenie, czy komputer 192.168.200.0 jest uśpiony czy nie.
Chcę aby kod wybudzenia, działał tylko wtedy, kiedy maszyna 192.168.200.0 śpi, nie odpowiada.

Pytanie:

- jakiej składni użyć aby wykonać coś takiego jak poniżej ( to tylko zarys pomysłu na openWrt )

skrypt:

if (192.168.200.0 !== wybudzony)

#!/bin/sh
echo "Content-type: text/html"
echo ""

echo "1"> /sys/class/leds/tp-link:green:lan4/brightness // włacza LED która włącza przekaźnik
sleep 2                                                                             // czas w jakim styki fizycznego przekaźnika są zwarte
echo "0"> /sys/class/leds/tp-link:green:lan4/brightness // wyłącza LED która wyłącza przekaźnik

}

smile

2

Odp: Sprawdzenie czy host jest dostępny - skrypt

zwykłym pingiem wystarczy?

    if ! ping -q -c 1 -W 10 192.168.200.0 > /dev/null; then
        coś do zrobienia
    fi
Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez pepe2k 2015-08-06 13:10:48)

Odp: Sprawdzenie czy host jest dostępny - skrypt

Wyślij ping i sprawdź czy przyszła odpowiedź.
To Ci zwróci ile było odpowiedzi na wysłane $ile pingów:

ping -q -c $ile -W $timeout 192.168.200.0 2>/dev/null | awk '/packets received/ {print $4}'

Edit: Cezary był szybszy smile