Acabamos de montarnos un iGate APRS en una Raspberry Pi con Raspbian y Direwolf y hemos comprobado que funciona en este enlace.
Pero tenemos que arrancarlo manualmente. ¿Y si hay un corte de luz?
Hay muchas maneras de hacerlo pero yo he probado esta y aunque no es la más ortodoxa a la hora de tener un servicio activo, tiene algunas ventajas y son por las que me he decantado.
Direwolf ya viene con un scrip de inicio que nos sirve para este cometido. Lo que vamos a hacer es aprovechar que Linux tiene un servicio que se llama CRON que en cierto modo es como un programador de eventos de manera que realiza tareas cuando se le dice periódicamente.
Vamos a pasarle un comando para que compruebe cada minuto si nuestro iGate está funcionando. En caso afirmativo, no hará nada, pero si no funciona, lo arrancará.
Esto, aparte de es sencillo de implementar, nos asegura que si el programa se cierra por cualquier motivo vuelva a abrirse pasados unos segundos.
Antes de nada, comprobaremos que el script funciona correctamente.
cd ~ ./dw-start
Debe aparecernos esto
Ahora vamos a ver si realmente está funcionando con el siguiente comando
screen -D -r direwolf
y podremos ver los mensajes de Direwolf. Para salir, pulsamos Control+A y D
Ahora que ya sabemos que va correctamente, vamos a ponerlo en el CRON para que comprueba cada minuto que está funcionando bien y en caso contrario, que lo reinicie.
Escribimos en el terminal de comandos:
crontab -e
Primero nos pedirá que elijamos qué editor de texto queremos usar. Yo escojo nano que es el 1 porque es al que estoy acostumbrado. Una vez elegido el editor se nos abre un archivo. En él, abajo del todo, al final de lo que hay escrito, incluimos la siguiente línea:
* * * * * /home/pi/dw-start.sh >/dev/null 2>&1
Control+X para salvar, S para confirmar y Enter para acpetar y nos contestará
Ahora vamos a reiniciar con sudo reboot y a esperar unos minutos a que arranque la raspberry y el programa para volver a conectarnos y comprobar que todo está funcionando como debe siguiendo los pasos de antes.
No sería mal momento para sacar una imagen de la tarjeta para copia de seguridad en caso de que se nos corrompa o estropee… Ahí lo dejo…