¿Qué necesito?

  • Un servidor Linux dedicado o VPS
  • CentOS

Que es cron

La planificación de tareas / trabajos en los sistemas operativos Linux se basa en cron. Cron o “cronjob” es un programador de tareas basado en el tiempo que los usuarios pueden utilizar para configurar y mantener entornos de software. Normalmente se utiliza para automatizar el mantenimiento o la gestión del sistema, cron es particularmente útil para programar tareas repetitivas.

  1. Lista de trabajos cron programados
  1. Para ver los trabajos cron programados actualmente para el servidor actual, use el siguiente comando:
crontab -l

Cómo planificar tareas / trabajos en CentOS 8

  1. Si necesita revisar los trabajos cron que se están ejecutando para otro usuario, use el siguiente comando:
sudo crontab -u -l

Cómo planificar tareas / trabajos en CentOS 8

  1. Editar CronTabs
  1. Editar su archivo crontab puede ser muy útil para ciertas tareas:
crontab -e

Cómo planificar tareas / trabajos en CentOS 8

  1. Cada línea del script crontab define una tarea. Un desglose de las entradas crontab a continuación:
<minute> <hours> <day_of_month> <month> <day_of_week> <command_to_run>
  1. A continuación se muestra una lista de todos los valores posibles para estos campos. Si usó un asterisco en lugar de un valor numérico, significa que se usan todos los valores posibles:
minute: 0 to 59

hours: 0 to 23

day of the month: 1 to 31

month: 1 to 12

day of the week: 0 (Sunday) to 6 (Saturday)

  1. Usando At – la alternativa a cron
  1. Cron es, con mucho, la herramienta de planificación más popular; Sin embargo, hay otro llamado AT. En realidad, es relativamente más fácil de usar. Además, puede utilizar determinadas palabras clave como “medianoche” o “tiempo de equipo” (4:00 p. M.). No está preinstalado en la mayoría de las distribuciones de Linux, aunque definitivamente es muy fácil de instalar.
  2. Para CentOS, use el siguiente comando:
yum install at

  1. Para Ubuntu, use el siguiente comando:
sudo apt install -y at

Cómo planificar tareas / trabajos en CentOS 8

  1. Una vez completada la instalación, asegúrese de que el daemon o el servicio estén habilitados:
sudo systemctl enable --now atd.service

Cómo planificar tareas / trabajos en CentOS 8

  1. Funciona un poco diferente. Cuando llame a ‘at’, debe indicarle el intervalo en el que se ejecutará la tarea. Por ejemplo, para ejecutar un comando específico después de una hora, use:
at now + 1 hour

Cómo planificar tareas / trabajos en CentOS 8

  1. Para realizar una tarea específica a las 6:00 p.m. en seis días, ejecute el siguiente comando en su lugar:
at 6pm + 6 days

Cómo planificar tareas / trabajos en CentOS 8

  1. Para salir del indicador de at, use ‘Ctrl + D’. ‘En’ muestra un resumen de las tareas que ha planificado y su tiempo de ejecución.

Próximos pasos

Recomendaría tomar medidas para restringir el acceso a cron, ya que es una herramienta poderosa en las manos correctas e incorrectas. Puede usarse para afectar negativamente a su sistema; Por ejemplo, un actor malintencionado podría usar trabajos cron para reinstalar continuamente un script en un sitio web en su servidor que permite a los usuarios escalar fuera de la raíz. No importa con qué frecuencia lo arregles, sigue volviendo.

  • Para permitir que los usuarios accedan a crontabs, /etc/cron.allow y /etc/cron.deny Los archivos se pueden utilizar para permitir o denegar el acceso. Simplemente ingrese un nombre de usuario en cualquiera de los archivos para permitir o denegar el acceso a crontab.
  • Si el /etc/cron.allow Entonces existe el archivo /etc/cron.deny El archivo no se utiliza. Es una cosa o la otra gente.
  • En la instalación estándar solo un archivo vacío /etc/cron.deny existirá.
  • Si no existe ninguno de los archivos, solo el usuario root tiene acceso para programar un trabajo a través de cron.

Conclusión

En conclusión, sugeriría tener esto en cuenta. Monitoree como su controlador Xbox, ya que nadie quiere compartir si puede ayudar. El acceso irrestricto a cron podría conducir a una toma de control hostil de su servidor web y, lo que es peor, de los datos de sus clientes.