Autorun en una Raspberry Pi
En esta entrada vamos a configurar Raspbian para que cuando arranque ejecute directamente un programa sin necesitad de ninguna intervención manual (teclado, ratón pantalla), en otras palabras vamos a crear un autorun. Esta configuración de raspbian es necesaria si usamos Raspberry Pi para controlar remotamente un vehículo o robot, un sistema domótico, etc.
Lo primero que debemos comprobar es que el programa se ejecuta correctamente desde el terminal del sistema:
- Hacer una copia de seguridad de su tarjeta SD
- Comprobar los permisos del fichero. En LINUX, los permisos se clasifican en tres bloques que muestra con la siguiente secuencia: los del usuario propietario, los de los usuarios de su grupo y los del resto de usaurios. Cada uno de ellos puede: -No tener permiso, R-lectura, W-escritura y X-ejecución.
pi@raspberrypi:~ $ ls -l /home/pi/proyectos/Python/led_balancin.py -rw-r--r-- 1 pi pi 1041 ene 27 15:49 /home/pi/proyectos/Python/led_balancin.py
- Dar permisos de ejecución. Así no necesitaremos que lo ejecute el superusuario sudo o el creador del mismo.
pi@raspberrypi:~ $ sudo chmod +x /home/pi/proyectos/Python/led_balancin.py pi@raspberrypi:~ $ ls -l /home/pi/proyectos/Python/led_balancin.py -rwxr-xr-x 1 pi pi 1041 ene 27 15:49 /home/pi/proyectos/Python/led_balancin.py
- Ejecutar el programa por terminal
pi@raspberrypi:~ $ python3 /home/pi/proyectos/Python/led_balancin.py
- Hacer una copia de seguridad del archivo que vamos a modificar /etc/rc.local
pi@raspberrypi:/etc $ sudo cp rc.local rc.bak
- Modificar el archivo añadiendo el comando a ejecutar con & para que no influya en el arranque normal en caso de ser un bucle infinito y posibilitar el acceso a la Raspberry Pi. Puede comprobar el contenido con el comando cat rc.local
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. python3 /home/pi/proyectos/Python/led_balancin.py & exit 0
- Cruzar los dedos y rearrancar la Raspberry pi
Comentarios
Publicar un comentario