Linux-Startup-Process

Puede surgir la necesidad de ejecutar un comando o script al reiniciar o cada vez que iniciamos nuestro sistema. Así que, ¿cómo podemos hacer eso? En este tutorial vamos a verlo. Discutiremos cómo podemos hacer que nuestros sistemas CentOS/RHEL y Ubuntu ejecuten un comando o script al reiniciar o al iniciar el sistema usando dos métodos diferentes. Ambos métodos han sido probados y funcionan perfectamente.

Método 1 – Usando rc.local

En este método, usaremos el archivo ‘rc.local’ ubicado en ‘/etc/’ para ejecutar nuestros scripts y comandos al inicio. Haremos una entrada para ejecutar el script en el archivo y cada vez que se inicie nuestro sistema, se ejecutará el script.

Pero primero le daremos los permisos para hacer el archivo /etc/rc.local ejecutable,

$ sudo chmod +x /etc/rc.local

A continuación añadiremos el script a ejecutar en el archivo,

$ sudo vi /etc/rc.local

& en la parte inferior del archivo, añade la entrada,

sh /root/script.sh &

Ahora guarda el archivo y sal. Del mismo modo podemos ejecutar un comando usando el archivo rc.local pero necesitamos asegurarnos de que mencionamos la ruta completa del comando. Para localizar la ruta de comandos completa, ejecuta,

$ which command

Por ejemplo,

$ which shutter
/usr/bin/shutter

Para CentOS, usamos el archivo ‘/etc/rc.d/rc.local’ en lugar de “ /etc/rc.local’. También necesitamos hacer este archivo ejecutable antes de añadir cualquier script o comando al archivo.

Nota:- Cuando ejecutes un script al iniciar, asegúrate de que el script termina con ‘exit 0’.

Método 2 – Crontab 

Este método es el más fácil de los dos métodos. Crearemos un trabajo cron que esperará 90 segundos después del inicio del sistema y luego ejecutará el comando o script en el sistema.

Para crear una tarea cron, abre el terminal y ejecuta,

$ crontab -e

y escribe la siguiente línea ,

@reboot ( sleep 90 ; sh /ruta/script.sh )

donde /ruta/script.sh es la ubicación del script a ejecutar.

 

Fuente: Original | maslinux

¿Quién está en línea?

Hay 45103 invitados y ningún miembro en línea