Después de las publicaciones sobre la alta temperatura de la Raspberry, te puede entrar la paranoia de que se queme, salga ardiendo, etc …
Para evitar esto, me he creado un simple script que mediante cron, monitorizará la temperatura de mi Raspberry y en caso que la temperatura suba del nivel que yo decida, se apague.
El script es muy sencillo. En la variable TEMP añadiremos la temperatura actual y preguntaremos si la temperatura es igual o superior a 60º.
Si es inferior, no sucederá nada. Si ejecutamos el script manualmente, la terminal nos devolverá Baja temperatura.
Si es igual o superior a 60º, recibiremos una notificación por Telegram, Exceso de Temperatura y mediante el comando sudo shutdown now, apagara nuestra Raspberry, así puedo dormir tranquilo.
Vamos a crearlo.
nano /home/angel/scripts/temp.sh
Y copiaremos nuestro script
#!/bin/bash
TEMP=$(/opt/vc/bin/vcgencmd measure_temp | cut -d"=" -f2 | cut -d "." -f1)
echo $TEMP
if [ "$TEMP" -ge "60" ]
then
echo "Alta temperatura"
curl -X POST https://api.telegram.org/bot<TOKEN BOT>/sendMessage\?chat_id\=<ID USUARIO>\&text\="Exceso de Temperatura"
sudo shutdown now
else
echo "Baja temperatura"
fi
La línea que comienza por curl, es la línea para notificarnos por Telegram el exceso de temperatura. Añade tu Token e ID.
Damos permisos de ejecución
sudo chmod +x /home/angel/scripts/temp.sh
Cosas importantes. Vamos a utilizar cron como usuario root, si no no tendremos permisos para apagar nuestra Raspberry.
sudo crontab -e
Añadiremos la siguiente línea, para que ejecute el script cada cada 2 minutos. Importante especificar la ruta completa del script.
*/2 * * * * /home/angel/scripts/temp.sh
Un método súper sencillo de apagar nuestra Raspberry si excede la temperatura de esta. Un ejemplo más, de lo maravilloso que es cron.
Publicado por Angel el Monday 21 October del 2019
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.