Script ausführen, wenn NIC keinen Link mehr hat

Lord Gurke

Nur echt mit 32 Zähnen
Hallo zusammen,

ich habe ein Internetgateway unter Debian hier, welches mehrere Netzwerkkarten hat - an einer davon ist das DSL-Modem angeschlossen.
Der Stecker am Kabel vom Modem war etwas ausgeleiert, so ist es halt passiert, dass ich versehentlich beim Abstöpseln einer USB-Festplatte das Kabel mit rausgezogen habe, was mir aber nicht aufgefallen ist. Gab natürlich dann Nachmittags einen bitterbösen Anruf von zu Hause, dass das Internet nicht ginge :rolleyes:

Jetzt ist der Stecker neu, für die Zukunft hätte ich aber gerne eine akustische Meldung, wenn eine der Netzwerkkarten keinen Link mehr hat.
Mit den "post-down"-Anweisungen in der /etc/network/interfaces scheint das schonmal nicht zu funktionieren...
Mir reicht es, wenn ein einfacher "beep" ausgeführt wird, Google hat mich da auch nicht wirklich weitergebracht.

Hier ein Ausschnitt aus meiner interfaces-Konfiguration:
Code:
allow-hotplug eth2
iface eth2 inet static
        address 172.18.37.1
        netmask 255.255.255.248
        network 172.18.37.1
        broadcast 172.18.37.7
        post-down /usr/bin/beep -f 400 -l 1900
        post-up /usr/bin/beep -f 800 -l 200
        pre-down /usr/bin/beep -f 400 -l 1900
        pre-up /usr/bin/beep -f 800 -l 200

Jetzt müsste eigentlich nach meinem Verständnis irgendwann nach dem Ziehen des Kabels ein piepsen kommen. Kommt aber nicht. Und im Logfile steht zwar "link down" - aber keine Fehlermeldung, die mir helfen würde herauszufinden, warum dieses Ding nicht piepsen will :(

Habt ihr da einen heißen Tipp für mich?

Danke schonmal und viele Grüße aus dem Tal
Max
 
Die pre- und post-Hooks werden natürlich nur ausgeführt, wenn das Initskript verwendet wird. Wenn du den Stecker aus der Netzwerkkarte ziehst oder die Verbindung aus sonstigen Gründen abbricht, passiert das natürlich nicht.

Als Frickellösung könntest du einen Cronjob erstellen, der mit `mii-tool` oder `ethtool` prüft, ob eine Verbindung besteht.
 
Back
Top