¿Qué software hay que emitirá una alerta (altavoz de PC) cuando no haya conectividad a Internet durante 5 minutos?
Parece que mi conmutador / enrutador se desconecta cada pocos días y quiero restablecerlo cuando sucede.
PC -- TP-Link switch/router -- FO
192.168.x.1 -- 192.168.x.2 / x.y.z.a -- a.b.c.d
networking
audio
monitoring
Kokizzu
fuente
fuente

Respuestas:
Puede usar una versión modificada de este script para hacer lo que quiera:
Estamos "CONECTADOS" Ejemplo
Con la depuración activada para que pueda ver lo que está haciendo el script.
Ejecutar con un nombre de host válido para demostrar el estado "la conexión está activa".
Lo anterior inicializa un par de variables y determina la última vez que fuimos a través del lazo,
$lastAccessTime. Ahora intentamos hacer ping a Google.Ahora calculamos cualquier tiempo de inactividad
$downTime, si el ping falla, de lo contrario, restablecemos$downTimea cero y volvemos a calcular$lastAccessTime.Ahora esperamos 15 segundos.
Ahora verificamos si hemos estado inactivos durante> 5 minutos (300 segundos). Luego repetimos pasando por el
whilebucle.Mientras estemos despiertos, no pasará nada más que verificar con el
pingcomando cada 15 segundos.Estamos "DESCONECTADOS" Ejemplo
Ahora para simular una "conexión está inactiva" estado, vamos a intercambiar el nombre de host que estamos ping y el uso de una falsificación uno,
google1234567890.com. Repitiendo una ejecución de nuestro script con la depuración habilitada, ahora vemos que se calcula un tiempo de inactividad real.Observe arriba que
$downTimees igual a 15 segundos hasta ahora. Si esperamos un poco más, veremos esto:Hemos acumulado 300 segundos de tiempo de inactividad. Así que ahora cuando comprobamos, imprimimos el mensaje,
alert.Este estado continuará hasta que se restablezca la conexión y
pingvuelva a tener éxito.¿Y qué hay de un sonido?
Eso es fácil. Puede usar una variedad de herramientas para hacer esto. Usaría algo como
soxomplayerpara reproducir un archivo de audio como un archivo.mp3o.wavcon un sonido apropiado que desea escuchar cada 15 segundos, mientras la conexión está inactiva.Simplemente reemplace el
alertmensaje anterior con esta línea para obtener comentarios de audio de que la conexión está desconectada.Tiempo de espera de problemas con ping
Si lo usa
pingde la manera anterior, es probable que encuentre un tiempo de retraso lento en el que se tardapingliteralmente entre 10 y 20 segundos en fallar cuando la conexión no funciona. Vea mi respuesta a esta pregunta y respuesta de U&L titulada: ¿Cómo redirigir la salida de cualquier comando? para un ejemplo usando la herramienta de línea de comando en sufinglugar. Esta herramienta fallará más rápidamente que la tradicionalping.fuente
beepcomando, ¿es seguro parachown /dev/tty0poder usarlo sin élsudo?/dev/tty0.sox! @Kokizzu - El derecho del SLM en dejar los permisos en el/dev/tty0dispositivo independiente, pero se puede obtener una pseudo-terminal de/dev/pts/[num]dispositivo - el mismo tipo de dispositivo de caracteres quextermusos para cada ventana, por ejemplo - con algo parecidoscreenotmuxinclusossh. Puede controlarlos de manera más segura, ya que de/dev/ptmxtodos modos son solo dispositivos esclavos del dispositivo maestro y no causarán el mismo tipo de problemas que, por ejemplo,/bin/loginpodría causar un proceso propiedad del usuario , que es lo que podría suceder en el otro caso.aplay alert.waves una forma más estándar de reproducir sonido, ya que es parte del sistema ALSA y viene incluido en la mayoría de las distribuciones.si está utilizando Linux, puede usar ping dentro de un script para,
google.compor ejemplo:fuente
finglugar deping. Elpingcmd. puede fallar un poco cuando no tiene éxito. Elfingcomando por otro lado fallará en 1 segundo. Vea mi A a este Q&A para más información: ¿Cómo redirigir la salida de cualquier comando? . Muestro ambos usandopingyfing.sleep 1es suficiente para prevenir esto.