Como ejecutar un script al iniciar nuestro sistema

Como ejecutar un script al iniciar nuestro sistema linux.

Es algo común, que necesitemos ejecutar un script al iniciar nuestro sistema linux. Normalmente… scripts o comandos que verifican la integridad del sistema, otros que generan registros y nos avisan, o simplemente cualquier utilidad especifica que necesites.

Existen diversos métodos para lograr nuestro objetivo, pero nosotros nos centramos en dos. Estos son validos para la inmensa mayoría de sistemas basados en linux. Hablamos de «rc-local» y de «crontab».

 

Como ejecutar un script al iniciar nuestro sistema

El método «rc-local», es el clásico de toda la vida. Su funcionamiento es simple. Todo el contenido del archivo se ejecutara al iniciar el sistema, concretamente antes de iniciar la sesión de usuario (por ejemplo, después de introducir nuestro usuario y password).

En la actualidad, el único requisito es que tengas el servicio systemd habilitado. Lo puedes verificar con el siguiente comando.

sudo systemctl status rc-local
Ejecutar un script Verificar el servicio

Ejecutar un script – Verificar el servicio

Bien… lo único que tienes que hacer es abrir el siguiente archivo, e insertar la ruta del script que quieres que se ejecute al iniciar el sistema. La ruta puede variar dependiendo de tu distribución.

sudo nano /etc/rc.local
# o
sudo nano /etc/rc.d/rc.local

Veras algo similar a:

  GNU nano 2.5.3           Archivo: /etc/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.

exit 0

Ahora, después de las líneas comentadas y antes del exit, copias y pegas la ruta del script seleccionado. No te olvides de concederle permisos de ejecución al script. Por ejemplo.

#!/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.

/home/sololinux/demoBash/libera.sh

exit 0

Guarda el archivo y cierra el editor. Como queremos verificar su correcto funcionamiento, reiniciamos el sistema.

sudo reboot

Una vez inicie nuestro linux:

sudo systemctl status rc-local

En el ejemplo vemos que nuestro script funciono correctamente (incluso nos informa de la hora de los diferentes comandos que contenía).

Verificar la ejecucion de script al iniciar el sistema

Verificar la ejecución de script al iniciar el sistema

 

Con el método Crontab, es quizás más sencillo. Mira que fácil…

sudo crontab -e

Veras algo similar 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

Al final del archivo, insertamos la orden de ejecutar un script en el inicio del sistema.

@reboot [ruta-del-script]

Por ejemplo…

@reboot /home/sololinux/demoBash/libera.sh

Guarda el archivo y cierra el editor.

Ya puedes reiniciar el sistema.

 

Canales de Telegram: Canal SoloLinux – Canal SoloWordpress

Espero que este articulo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales. Como ejecutar un script al iniciar nuestro sistema.

 

4 Comentarios

  1. Henry
    13/05/2020
    • Marcel
      13/05/2020
    • Sergio G.B.
      13/05/2020
  2. Jesus
    14/05/2020

Agregar comentario