Los servicios más conocidos en Linux se pueden añadir en el arranque sin problemas, porque la mayoría de ellos vienen con su propio script, que se hace usando los comandos ‘chkconfig’ y ‘systemctl’.

Por ejemplo, para añadir el servicio ‘Apache httpd’ en el arranque, ejecute uno de los siguientes comandos basado en su gestor de sistema. Del mismo modo se puede añadir cualquier servicio bien conocido como se requiere en el arranque.

Para el sistema Sys V init:

# chkconfig --level 35 httpd on

Para el sistema systemd:

# systemctl enable httpd

A veces es posible que tenga que añadir un script personalizado o comando o servicio en el inicio / arranque. Si es así, ¿cómo lo haces?

En este artículo, vamos a entender cómo utilizar los siguientes tres métodos para implementarlo:

  • Usando el archivo /etc/rc.d/rc.local
  • Usando el archivo crontab
  • unidad de servicio systemd

Método-1: Usando el archivo /etc/rc.d/rc.local

El archivo «/etc/rc.local» se ejecuta tradicionalmente después de que se hayan iniciado todos los servicios normales del ordenador al final del proceso de cambio a un nivel de ejecución multiusuario.

Este método también funciona en el sistema systemd, y es necesario añadir la ubicación de su script al archivo ‘/etc/rc.d/rc.local’ para que se ejecute en el arranque.

Asegúrese de que el archivo tiene permiso de ejecución.

# chmod +x /etc/rc.d/rc.local

Para entender esto en detalle, crearemos un sencillo script como el que se muestra a continuación, pero puedes crear cualquier script según sea necesario:

# vi /opt/scripts/run-script-on-boot.sh#!/bin/bashdate > /root/on-boot-output.txthostname > /root/on-boot-output.txt

Una vez que el script esté listo, establece el permiso de ejecución como se muestra a continuación:

# chmod +x /opt/scripts/run-script-on-boot.sh

Finalmente agregue el script al final del archivo:

# vi /etc/rc.d/rc.local/opt/scripts/run-script-on-boot.sh

Reinicie su sistema para verificar esto:

# reboot

Método-2: Usando el archivo crontab

cron ejecuta trabajos programados automáticamente en el backend a una hora específica.

Esto puede lograrse fácilmente usando una cadena especial llamada "@reboot" con el trabajo cron.

@reboot es una cadena especial y permite al usuario ejecutar cualquier comando o script al inicio (tiempo de arranque).

Este ejemplo ejecuta el archivo ‘/opt/scripts/run-script-on-boot.sh’ en el reinicio del sistema.

Utilizaremos el mismo script que se creó en el ejemplo anterior. Para ello, basta con añadir la siguiente entrada en el archivo crontab:

# crontab -e@reboot /opt/scripts/run-script-on-boot.sh

Reinicie su sistema para comprobarlo:

# reboot

Método-3: Usar la unidad de servicio systemd

Este método sólo funciona en el sistema systemd y es muy sencillo.

Para ello, es necesario crear un script de inicio de systemd y colocarlo en el directorio «/etc/systemd/system/».

Este es nuestro ejemplo de script de unidad de inicio de systemd:

# vi sample-on-boot-script.serviceDescription=Run a Custom Script at StartupAfter=default.targetExecStart=/opt/scripts/run-script-on-boot.shWantedBy=default.target

Una vez que coloque el script de unidad en la ubicación de systemd, ejecute el siguiente comando para actualizar los archivos de configuración de systemd y habilitar el servicio:

# systemctl daemon-reload# systemctl enable sample-on-boot-script.service

Reinicie su sistema para comprobarlo:

# reboot

Consejos de bonificación:

Si desea ejecutar un script en segundo plano, debe añadir el símbolo de ampersand al final "&".

/Path/To/My_Script &

Si desea ejecutar el comando como un usuario diferente, utilice el siguiente formato:

su - $USER -c /Path/To/My_Script

Conclusión

Este tutorial discute brevemente cómo agregar un script personalizado o comando o servicio en el inicio.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.