Raspberry Pi 4

Ejecutar comando al inicio de Raspberry Pi

En este post te mostraré cómo ejecutar un comando o instrucción (de hecho, se va a ejecutar un script sh que tendrá los comandos que quieras) siempre que la Raspberry Pi se reinicie.

Dicho de otro modo, ejecutar un script siempre que la Raspberry Pi encienda.

Colocar órdenes en un script

Primero debes colocar los comandos que se deben ejecutar en el inicio dentro de un archivo con extensión .sh. En mi caso quiero limitar el uso de la red pues uso la Pi como un punto de acceso y quedan así:

sudo tc qdisc add dev wlan1 root tbf rate 0.5mbit burst 32kbit latency 400ms
sudo tc qdisc add dev wlan0 root tbf rate 0.5mbit burst 32kbit latency 400ms

Si te fijas, mi script se llama limitar.sh y está dentro de /home/pi/

Dar permiso de ejecución

Esto puede o no puede ser necesario, dependiendo del privilegio que necesites, pero de igual modo lo dejo aquí. Debes dar permisos de ejecución al script con chmod. En mi caso fue con:

sudo chmod +x limitar.sh

Editar crontab

Ejecutar comando al iniciar Raspberry Pi

Vamos a usar crontab con una opción especial para ejecutar el script al reiniciar el sistema. En este caso escribe:

sudo crontab -e

Nota: puede que te solicite el editor con el que vas a modificar el archivo, elige el que más te convenga y si no sabes usarlo, busca un tutorial externo.

Ahora al final del archivo añade lo siguiente:

@reboot /home/pi/limitar.sh

En este caso estoy indicando que en el reboot o reinicio (@reboot), se ejecute el script de /home/pi/limitar.sh

Personalmente mi crontab queda así, pues no tengo otros scripts que ejecutar a otros momentos del día:

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
@reboot /home/pi/limitar.sh

Guarda los cambios del archivo y cierra el editor. Al reiniciar el sistema operativo Linux que contiene la Pi, comprobarás que el script se está ejecutando.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

3 días hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

3 días hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

3 días hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

3 días hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

3 días hace

Solución: Apache – Server unable to read htaccess file

Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…

4 días hace

Esta web usa cookies.