Icono del sitio Binario 0

Configuración de un Comando o Script al Inicio o Reboot Usando crontab

Artículos Guías Manuales Sistemas Linux Windows Binario 0

Artículos Guías Manuales Sistemas Linux Windows Binario 0

FacebookEmailWhatsAppLinkedInRedditXShare

n sistemas operativos basados en Linux, ejecutar comandos al inicio o después de un reinicio es una tarea común. Tradicionalmente, esto se lograba utilizando el archivo rc.local. Sin embargo, con la modernización de sistemas y la transición hacia systemd, este archivo ya no está habilitado por defecto en muchas distribuciones. Una alternativa eficiente y sencilla para lograr esto es usando crontab.

En este artículo, aprenderemos cómo configurar un comando para que se ejecute automáticamente después de un reinicio utilizando la funcionalidad @reboot en crontab.

¿Qué es @reboot en crontab?

crontab es un administrador de tareas programadas en Linux que permite ejecutar comandos o scripts a intervalos definidos o en momentos específicos. Uno de los parámetros especiales que ofrece es @reboot, que se utiliza para ejecutar comandos automáticamente cada vez que el sistema se inicia.

Configuración Paso a Paso

1. Editar el Archivo de Crontab

Para configurar un comando que se ejecute al reiniciar el sistema, primero debemos acceder al archivo de crontab del usuario. Ejecuta el siguiente comando en la terminal:

crontab -e

Esto abrirá el editor de texto configurado para crontab. Si es la primera vez que accedes, el sistema te pedirá seleccionar un editor de tu preferencia (por ejemplo, nano o vim).

2. Añadir la Tarea al Archivo

Dentro del archivo de crontab, añade una línea con la siguiente sintaxis:

@reboot /ruta/al/script.sh

Por ejemplo, si tienes un script ubicado en /usr/local/sbin/script.sh, la línea quedaría así:

@reboot /usr/local/sbin/script.sh

3. Guardar los Cambios

Una vez que hayas añadido la línea, guarda y cierra el archivo. Esto dependerá del editor que estés usando:

4. Verificar la Configuración

Para confirmar que la tarea se agregó correctamente, puedes listar las tareas programadas ejecutando:

crontab -l

Deberías ver la línea que acabas de añadir.

Ejemplo Práctico

Supongamos que deseas ejecutar un script que registra la hora del reinicio del sistema en un archivo de log. Puedes crear el script log_reboot.sh con el siguiente contenido:

#!/bin/bash
echo "Sistema reiniciado: $(date)" >> /var/log/reboot.log

Luego, asegúrate de que el script tenga permisos de ejecución:

chmod +x /ruta/a/log_reboot.sh

Finalmente, añádelo a crontab con la siguiente línea:

@reboot /ruta/a/log_reboot.sh

Consideraciones Finales

  1. Permisos: Asegúrate de que el usuario que configura crontab tiene permisos para ejecutar el script o comando.
  2. Rutas Absolutas: Siempre utiliza rutas absolutas para evitar problemas al ejecutar los comandos.
  3. Logs: Es útil redirigir la salida de tus comandos a un archivo de log para depurar posibles errores.

Con este método, puedes configurar tareas al inicio del sistema de forma sencilla, sin necesidad de depender de rc.local o crear servicios personalizados en systemd.

Salir de la versión móvil