mirror of https://gitlab.com/hp3icc/emq-TE1.git
108 lines
2.2 KiB
Bash
108 lines
2.2 KiB
Bash
#!/bin/bash
|
|
SCRIPT_NAME="rebooter.sh"
|
|
|
|
# Registra el inicio en /opt/curl.txt
|
|
echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
|
|
#####################################################################################################################
|
|
# rebooter general system
|
|
#####################################################################################################################
|
|
|
|
sudo cat > /usr/local/bin/rebooter1.sh <<- "EOF"
|
|
#!/bin/bash
|
|
|
|
# Tiempo de monitoreo en segundos
|
|
TIEMPO_MONITOREO=300
|
|
|
|
# Tiempo de espera entre los chequeos en segundos
|
|
TIEMPO_ESPERA=60
|
|
|
|
# Función para verificar el estado de Internet
|
|
verificar_internet() {
|
|
ping -c 5 noip.com > /dev/null 2>&1
|
|
return $?
|
|
}
|
|
|
|
# Bucle infinito para monitorear
|
|
while true; do
|
|
if verificar_internet; then
|
|
# Acción silenciosa
|
|
:
|
|
echo "internet ok"
|
|
else
|
|
# echo "sin internet"
|
|
sleep $TIEMPO_MONITOREO
|
|
|
|
if verificar_internet; then
|
|
# Conexión restablecida
|
|
# echo "internet restablecido"
|
|
:
|
|
else
|
|
sudo reboot
|
|
# echo "apliando reboot"
|
|
fi
|
|
fi
|
|
|
|
sleep $TIEMPO_ESPERA
|
|
done
|
|
|
|
|
|
EOF
|
|
#
|
|
#####################################################################################################################
|
|
# rebooter 2
|
|
#####################################################################################################################
|
|
|
|
sudo cat > /usr/local/bin/rebooter2.sh <<- "EOF"
|
|
#!/bin/bash
|
|
sleep 300
|
|
while :
|
|
do
|
|
SERVER=noip.com
|
|
|
|
ping -c5 ${SERVER} > /dev/null
|
|
|
|
if [ $? != 0 ]
|
|
then
|
|
#
|
|
sudo reboot
|
|
|
|
fi
|
|
|
|
|
|
sleep 60
|
|
done
|
|
|
|
EOF
|
|
#
|
|
sudo cat > /lib/systemd/system/rebooter1.service <<- "EOF"
|
|
[Unit]
|
|
Description=Rebooter Service1
|
|
After=network.target
|
|
|
|
[Service]
|
|
ExecStart=/usr/local/bin/rebooter1.sh
|
|
Restart=on-failure
|
|
|
|
[Install]
|
|
WantedBy=default.target
|
|
|
|
EOF
|
|
#
|
|
sudo cat > /lib/systemd/system/rebooter2.service <<- "EOF"
|
|
[Unit]
|
|
Description=Rebooter Service2
|
|
After=network.target
|
|
|
|
[Service]
|
|
ExecStart=/usr/local/bin/rebooter2.sh
|
|
Restart=on-failure
|
|
|
|
[Install]
|
|
WantedBy=default.target
|
|
|
|
EOF
|
|
#########
|
|
sudo systemctl daemon-reload
|
|
sudo chmod +x /usr/local/bin/rebooter*
|
|
echo "Finalizado: $SCRIPT_NAME" >> /opt/curl.txt
|