ayuda como conectar el SAI
#11
(12-03-2019, 07:27 PM)Ganekogorta escribió: Efectivamente, sólo queda añadir órdenes de apagado o anulación remotas.

En caso de no poder lanzar comandos a los pc o mac estoy pensando en apoyarme en la creación/existencia de archivos en esos equipos vía samba. Y en esos equipos hacer una comprobación para apagar de forma local si existe ese archivo (creado por la nas)


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)

Ok. Haber si saco un rato y lo pruebo en mi QNAP. Mi NAS está conectado via  usb, con lo cual usaría el segundo script verdad? Tendría que poner mi email en destinatario y remitente?
  Responder
#12
Buenas noches Ganekogorta, una pregunta después de mucho tiempo sobre este tema de mensajes. al final he cambiado de SAI por motivos de ruido que eran insoportables, he cambiado a otro de la marca Cyberpower, habría que modificar el Script supongo no? o valdría con los que tu  pusiste en su dia?  gracias



Cita:#! /bin/bash
destino="destinatario@gmx.com"
remite="remitente@gmail.com"
ups=$(upsc qnapups@localhost | grep ups.statusSmile
estado=${ups:12:2}
echo "$ups  $estado"
 if [ "$estado" = "OL" ]; then
       echo "EL SAI está con energia electrica en la NAS con SAI"
        #compruebo si existe el archivo de flag para saber si ha vuelto la energía
        
        if [ -f flag1.txt ]; then
         # si existe el archivo flag1.txt de no comunicacion con el SAI, lo borro
         rm flag1.txt
        elif [ -f flag.txt ]; then
            # envío un correo avisando de que ha vuelto la energía eléctrica
            echo "Subject: SAI en carga" > correo.txt
            echo "From: $origen" >> correo.txt
            echo "To: $destino" >> correo.txt
            echo "Ha retornado la energia electrica, el SAI se pone en carga" >> correo.txt
            cat correo.txt | /usr/sbin/sendmail -t
            rm flag.txt
            # aborto ordenes de apagado a otros equipos
        fi

 elif [ "$estado" = "OB" ]; then
       
        if [ -f flag1.txt ]; then
         # si existe el archivo flag1.txt de no comunicacion con el SAI, lo borro
         rm flag1.txt
        fi
        echo "El SAI está con baterías"
        # envío un correo avisando de que el SAI entra en accion
        echo "Subject: SAI en funcionamiento en NAS principal" > correo.txt
        echo "From: $origen" >> correo.txt
        echo "To: $destino" >> correo.txt
        echo "Hay caida de energía eléctrica, el SAI entra en marcha" >> correo.txt
        cat correo.txt | /usr/sbin/sendmail -t
        echo "SAI en marcha" > flag.txt
        # lanzo ordenes de apagado a otros equipos
        
        
 else
        echo "No contacto con el SAI"
        if [  ! -f flag1.txt ]; then
            # si NO existe el archivo flag1.txt de no comunicacion con el SAI, lo creo y envío correo
            echo "Subject: No encuentro SAI" > correo.txt
            echo "From: $origen" >> correo.txt
            echo "To: $destino" >> correo.txt
            echo "No comunico con el SAI, puede estar desconectador el cable USB" >> correo.txt
            cat correo.txt | /usr/sbin/sendmail -t
            #creo archivo flag1 para que solo se avise una vez por correo
            echo "SAI sin contacto" > flag1.txt
        fi
 fi
 #borro el archivo de correo
 if [ -f correo.txt ]; then
        rm correo.txt
 fi
  Responder
#13
Hola

En principio vale para todos los sai en los que la nas sea capaz de conocer su estado.


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Responder
#14
(07-07-2019, 12:05 AM)Ganekogorta escribió: Hola

En principio vale para todos los sai en los que la nas sea capaz de conocer su estado.


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)


ok. muchísimas gracias
  Responder
#15
Bunas Ganekogorta. siento siempre responder a las pruebas tan tarde.

voy a grabar el sricpt para que se ejecute en contrab, la orden seria así verdad?

Cita:echo -e "*/5 * * * * /share/CACHEDEV1_DATA/Scripts/sai.sh">> /mnt/HDA_ROOT/.config/crontab

crontab  /etc/config/crontab


con escribir ese código valdría verdad?

o lo prodria hacer también de la siguiente forma:



Cita:- vi /etc/config/crontab

          - Añadimos la linea: */5 * * * * /bin/bash /share/CACHEDEV1_DATA/homes/admin/actualizaip.sh

Ahora para guardarlo hay que pulsar la tecla ESC una vez, luego escribes ":wq!"  (dos puntos, letra w, letra q y admiración). Al dar al enter le estás diciendo que lo escriba (Write) y que salga (eXit)
  • Reiniciamos el cron: crontab /etc/config/crontab && /etc/init.d/crond.sh restart
  Responder
#16
Hola
Si a ambas cosas.

En la primera metes la línea a mano. Súper importante poner >> porque como sólo pongas > te cargas todo el archivo de crontab y lo dejas con esa única línea. Y lo que queremos es agregar esa línea (usamos >> para agregar )

Pero has de lanzar las últimas órdenes (que has encadenado con &&” para actualizar y relanzar el cron.


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Responder
#17
(17-07-2019, 07:41 PM)Ganekogorta escribió: Hola
Si a ambas cosas.

En la primera metes la línea a mano. Súper importante poner >> porque como sólo pongas > te cargas todo el archivo de crontab y lo dejas con esa única línea. Y lo que queremos es agregar esa línea (usamos >> para agregar )

Pero has de lanzar las últimas órdenes (que has encadenado con &&” para actualizar y relanzar el cron.


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)


ok. gracias. lo añadiré mediante la ultima orden que me parece mas fácil y así me aseguro que no borro nada.



Cita:- vi /etc/config/crontab


          - Añado la linea: */5 * * * * /bin/bash /share/CACHEDEV1_DATA/Scripts/sai.sh


y después escribo lo siguiente

Cita:A para guardarlo hay que pulsar la tecla ESC una vez, luego escribes ":wq!"

y ya por ultimo reinicio el cron

Cita:crontab /etc/config/crontab && /etc/init.d/crond.sh restart
  Responder
#18
Buenas noches, justo hace 10 minutos me acaba de saltar La Luz de casa pero el Script no me ha llegado a funcionar, han pasado mas de 5 minutos y no me ha llegado ningún mensaje.

el script es el siguiente:

Cita:#! /bin/bash
destino="mi email"
remite="email donde recibirá los avisos"
ups=$(upsc qnapups@localhost | grep ups.statusSmile
estado=${ups:12:2}
echo "$ups  $estado"
 if [ "$estado" = "OL" ]; then
       echo "EL SAI está con energia electrica en la NAS con SAI"
        #compruebo si existe el archivo de flag para saber si ha vuelto la energía
        
        if [ -f flag1.txt ]; then
         # si existe el archivo flag1.txt de no comunicacion con el SAI, lo borro
         rm flag1.txt
        elif [ -f flag.txt ]; then
            # envío un correo avisando de que ha vuelto la energía eléctrica
            echo "Subject: SAI en carga" > correo.txt
            echo "From: $origen" >> correo.txt
            echo "To: $destino" >> correo.txt
            echo "Ha retornado la energia electrica, el SAI se pone en carga" >> correo.txt
            cat correo.txt | /usr/sbin/sendmail -t
            rm flag.txt
            # aborto ordenes de apagado a otros equipos
        fi

 elif [ "$estado" = "OB" ]; then
       
        if [ -f flag1.txt ]; then
         # si existe el archivo flag1.txt de no comunicacion con el SAI, lo borro
         rm flag1.txt
        fi
        echo "El SAI está con baterías"
        # envío un correo avisando de que el SAI entra en accion
        echo "Subject: SAI en funcionamiento en NAS principal" > correo.txt
        echo "From: $origen" >> correo.txt
        echo "To: $destino" >> correo.txt
        echo "Hay caida de energía eléctrica, el SAI entra en marcha" >> correo.txt
        cat correo.txt | /usr/sbin/sendmail -t
        echo "SAI en marcha" > flag.txt
        # lanzo ordenes de apagado a otros equipos
        
        
 else
        echo "No contacto con el SAI"
        if [  ! -f flag1.txt ]; then
            # si NO existe el archivo flag1.txt de no comunicacion con el SAI, lo creo y envío correo
            echo "Subject: No encuentro SAI" > correo.txt
            echo "From: $origen" >> correo.txt
            echo "To: $destino" >> correo.txt
            echo "No comunico con el SAI, puede estar desconectador el cable USB" >> correo.txt
            cat correo.txt | /usr/sbin/sendmail -t
            #creo archivo flag1 para que solo se avise una vez por correo
            echo "SAI sin contacto" > flag1.txt
        fi
 fi
 #borro el archivo de correo
 if [ -f correo.txt ]; then
        rm correo.txt
 fi


decir que solamente he cambiado los email que están en negrita, el resto de código lo he dejado como esta.

Cita:echo -e "*/5 * * * * /share/CACHEDEV1_DATA/Scripts/sai.sh">> /mnt/HDA_ROOT/.config/crontab

y luego he reiniciado con la siguiente

Cita:crontab /etc/config/crontab && /etc/init.d/crond.sh restart
  Responder
#19
Hola
Pregunta previa ¿de donde están alimentados el router y el switch?
Si están apagados durante el corte, la nas no puede enviar mensajes, está incomunicada.

Como ahora te ha vuelto la energía, puedes hacer pruebas desenchufando el sai de 220V. Comprueba a ver si te llega mensaje o te apaga ordenadamente las nas.


Un saludo

Agur eta ondo ibilli

Mon (TS-469Pro, TVS-673, QBoat Sunny y TS-453Be)
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Responder
#20
Buenas. El router está conectado a la SAI.
He probado esta mañana a desenchufar el SAI de la red para ver si me llegaba el
Mensaje y no me llegan.
En el NAS tengo configurado que si en 2 minutos está siendo alimentado por el SAI empiece a pagar servicios, podría ser por eso?

Otra cosa, no entiendo mucho de script, pero tendria analgo que ver esto?
Lo dejo subrayado. Tendría que ser en vez de “remite” sería “origen”?


[Imagen: J94vowX.jpg]" />
  Responder




Usuarios navegando en este tema: 1 invitado(s)