automizar el cron para que se ejecute

automizar el cron para que se ejecute

de Juan Arango -
Número de respuestas: 3

Cordial Saludo para todos,

Deseo realizar la automatización del cron para que se ejecute cada 15 o 30 minutos segun las recomendaciones que he visto en la documentación de Moodle, pero la verdad no conozco el proceso, o en que línea del archivo debo hacer el cambio.

 

No se, si es por este lado pero les pregunto a ustedes que tienen mas experiencia, actualmente estoy usando la vr. 1.9.17+

cron.php

//////////////////////////////////////

 set_time_limit(0);     $starttime = microtime();

/// The following is a hack necessary to allow this script to work well /// from the command line.

    define('FULLME', 'cron');

En lo que me puedan orientar se los agradezco,

o debo agregar esta linea en el crontab de mi centos para que pueda funcionar?

 

  */5 * * * * wget -q -O /dev/null http://example.com/moodle/admin/cron.php

 

 

Promedio de valoraciones: -
En respuesta a Juan Arango

Re: automizar el cron para que se ejecute

de David Quintal -

Saludos Juan

La linea que comentas esta bien

Solo que */5 dice que cada 5min se ejecuta el cron.php que no esta mal me parece lo mas adecuado si quieres cada 15minutos solo pn */15  30min */30

En respuesta a Juan Arango

Re: automizar el cron para que se ejecute

de javier camacho -

Para programar la ejecución de cron.php, necesitas tener acceso al servicio del sistema (Cron)

Para ingresar a la consola de comandos de tu servidor necesitas tener acceso ya sea por telnet o por ssh.

Una vez que entras a la consola de comandos (bash/sh) ejecuta lo siguiente:

crontab -e

Eso te abrirá la lista de tareas de Cron, conocida como "crontab".

Para poder insertar la nueva tarea en la lista de tareas, pulsa la tecla "ins" y escribe la regla de crontab; te pongo de ejemplo mi línea de crontab:

# A las 11:05 am, todos los dias ejecutar cron de moodle enviar un mail y borrar el archivo cron.php que se descarga con wget
05 11 * * * wget http://ejemplo.com/moodle/admin/cron.php ; mail -s "Ejecutando Cron de Moodle" micorreo@ejemplo.com < /root/cron.php ; rm /root/cron.php

Para guardar crontab y salir, pulsas la tecla "esc" luego dos puntos ":"  luego "wq" y enter. Sería algo así:

:wq

Si tienes dudas sobre el uso y sintáxis de Cron, en google hay muy buenos tutoriales.

En respuesta a javier camacho

Re: automizar el cron para que se ejecute

de Juan Arango -

Muchas gracias a los dos por responder.

Efectivamente tengo acceso al servidor por ssh y antes de que me respondieras habia hecho lo siguiente

verificar que el proceso del cron se estuviera ejecutando, con resultado satisfactorio

-->/etc/init.d/crond status

Luego, en el directorio, /etc/cron.hourly cree un script llamado ejec_cron.sh donde ingrese

/////////////////////////////////

#!/bin/bash

wget http://ejemplo.com/moodle/admin/cron.php

////////////////////////////////////

le cambie los permisos al archivo para que fuera ejecutable

--->chmod +x script.sh

En teoria, teniendo en cuenta que el crontab hace un llamado al directorio cron.hourly cada hora deberia poder ejecutarse? o estoy errado?

Cordial Saludo,