Tutoriales

Ejecute el trabajo cron de Linux después de reiniciar el sistema

I Estoy en un servidor Red Hat Enterprise Linux. ¿Existe una manera fácil de ejecutar un script o comando en el arranque después de un nuevo comando de reinicio? ¿Cómo puedo ejecutar un trabajo cron en Linux después de reiniciar el sistema?

crontab es el programa que se usa para instalar, desinstalar o listar las tablas que se usan para controlar el demonio cron en Vixie Cron. Cada usuario puede tener su crontab. Usted o el usuario pueden usar el comando crontab para editar trabajos cron. Esta página muestra cómo ejecutar un trabajo cron después de reiniciar el sistema Linux.

Detalles de las instrucciones
Nivel de dificultad Sencillo
Derechos de root no
requisitos Bruja de Linux
Horario de verano europeo. Tiempo de leer 2 minutos

Linux ejecuta el trabajo cron después de reiniciar el sistema

El comando crontab administra archivos crontab para usuarios individuales. Los trabajos cron pueden instalarse o eliminarse según sea necesario.
Ejecute el trabajo cron de Linux después de reiniciar el sistema

Trabajo en ejecución al inicio (tiempo de inicio)

Tienes que usar una cadena especial llamada @ reiniciar. Se ejecutará una vez al inicio después del comando de reinicio de Linux. La sintaxis es la siguiente:

@reboot  /path/to/job
@reboot  /path/to/shell.script
@reboot  /path/to/command arg1 arg2

Esta es una manera fácil de brindarles a sus usuarios la capacidad de ejecutar un script o comando de shell en el arranque sin acceso de root. Primero, ejecute el comando crontab:
$ crontab -e
O
# crontab -e -u UserName
# crontab -e -u vivek

Ejecute un script llamado /home/vivek/bin/installnetkit.sh
@reboot /home/vivek/bin/installnetkit.sh
Es una forma muy fácil de ejecutar scripts en el arranque con trabajos cron.

Cómo ejecutar un trabajo cron automáticamente después de reiniciar el servidor

Por ejemplo, suponga que su secuencia de comandos tarda 5 minutos en ejecutarse. Por ejemplo: reiniciar + 5 minutos. La sintaxis es la siguiente:
@reboot sleep 300 && /home/wwwjobs/clean-static-cache.sh
El comando de suspensión para agregar un retraso durante un período de tiempo. En este ejemplo, 600 segundos y luego clean-static-cache.sh se ejecutan en el arranque.

Crond se iniciará automáticamente al arrancar

También necesita habilitar el servicio crond a través del sistema de estilo init sys v / BSD. En RHEL / CentOS / Fedora, debe usar el comando chkconfig (ntsysv) para habilitar Crond en el arranque:
# chkconfig crond on
## Commands to start/stop/restart crond for Linux Execute Cron Job ###
# service crond restart
# service crond start
# service crond stop

En Debian / Ubuntu Linux, use update-rc.d de la siguiente manera para activar el servicio en el arranque:
# update-rc.d cron defaults
Si está utilizando una distribución moderna con systemd, pruebe el siguiente comando systemctl
# systemctl enable crond.service
### this to start/stop/restart crond on systemd enabled distro such centos 7.x/debian/ubutnu/arch ###
# systemctl start crond.service
# systemctl stop crond.service
# systemctl restart crond.service
# systemctl status crond.service

Para Debian / Ubuntu Linux con systemd, intente:
$ sudo systemctl enable cron.service
$ sudo systemctl start cron.service
$ sudo systemctl stop cron.service
$ sudo systemctl restart cron.service
$ sudo systemctl status cron.service

Guarde y cierre el archivo. Para obtener más información, consulte el tutorial de trabajos cron.

Reciba notificaciones automáticas cuando el sistema Linux se conecte

Ciertos trabajos en AWS requieren un ssh en funcionamiento para replicar la configuración del clúster y la replicación de archivos TLS con enlaces. Para hacerlo simple, Nginx usaría ssh para enviar archivos TLS a todos los nodos del clúster. Sin embargo, esto falla cuando el servidor se ha reiniciado para una actualización del kernel. Por lo tanto, el desarrollador y el administrador del sistema deben iniciar sesión en el cuadro de forma manual y agregar claves SSH con un script de anillo de claves. Mi trabajo cron:
@reboot /efs/scripts/push-reboot-notification
Ejemplo de / efs / scripts / push-reboot-notification presionando / enviando un mensaje a iOS y Android a través de un script CLI de Linux:

Guías exclusivas para seguidores de Patreon 🤓

  • Sin publicidad ni seguimiento
  • Instrucciones detalladas para desarrolladores y administradores de sistemas en Opensourceflare✨
  • Únase a mi Patreon para ayudar a los creadores de contenido independientes y lea las guías más recientes:

asociar Patreon

#!/usr/bin/env bash
source /efs/scripts/cli_app_pushover.sh
push_to_mobile "$0" "The $HOSTNAME (AWS Debian) server was rebooted. Please login over ssh and add a new ssh key. Otherwise, a backup job and TLS certificate replication by nginx-sync will fail for sure. Boot time:
 
$(last -x reboot | head -1)" >/dev/null

diploma

Esta página mostró cómo ejecutar y ejecutar un trabajo cron después de reiniciar el sistema. Para obtener más información, consulte esta página aquí o léala con el comando man:
man 1 crontab
man 5 crontab


PUBLICIDAD


Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba