Los Nextcloud CronJobs son procesos au­to­má­ti­cos que ejecutan tareas re­cu­rre­n­tes, como el ma­n­te­ni­mie­n­to, la si­n­cro­ni­za­ción o el envío de no­ti­fi­ca­cio­nes. Para co­n­fi­gu­rar­los, se puede optar por uno de estos tres métodos: AJAX, WebCron o Cron.

¿Para qué sirven los CronJobs en Nextcloud?

En Nextcloud, los CronJobs son fu­n­da­me­n­ta­les para mantener el buen re­n­di­mie­n­to y la fia­bi­li­dad del software en la nube. Permiten ejecutar tareas en segundo plano de forma au­to­ma­ti­za­da sin necesidad de in­te­r­ve­n­ción por parte del usuario. Entre estas tareas se en­cue­n­tran, por ejemplo:

  • Vaciar la papelera: Nextcloud no elimina di­re­c­ta­me­n­te los archivos borrados, sino que los traslada a una papelera. Allí también se almacenan versiones an­te­rio­res de los archivos para facilitar su re­cu­pe­ra­ción. Los CronJobs eliminan estos elementos au­to­má­ti­ca­me­n­te después de un tiempo de­te­r­mi­na­do, lo que ayuda a liberar espacio.
  • Ac­tua­li­zar con fre­cue­n­cia los índices de búsqueda: cuando se suben, modifican o eliminan archivos, es necesario renovar los índices de búsqueda de Nextcloud. Los CronJobs realizan esta tarea de forma periódica en in­te­r­va­los de tiempo de­te­r­mi­na­dos, por lo que los re­su­l­ta­dos están siempre al día.
  • No­ti­fi­ca­cio­nes por correo ele­c­tró­ni­co y ac­tua­li­za­cio­nes de actividad: Nextcloud utiliza los CronJobs para informar a los usuarios sobre eventos como subidas en carpetas co­m­pa­r­ti­das o nuevas entradas en el ca­le­n­da­rio.
  • Análisis en segundo plano de archivos: para detectar cambios rea­li­za­dos fuera de la interfaz de usuario, Nextcloud analiza el sistema de archivos con fre­cue­n­cia. Esta tarea se au­to­ma­ti­za mediante CronJobs.
  • Ma­n­te­ni­mie­n­to y limpieza: archivos te­m­po­ra­les, datos de sesiones antiguas o entradas obsoletas en la base de datos pueden afectar al re­n­di­mie­n­to. Los CronJobs se encargan de eliminar y optimizar estos elementos de forma au­to­má­ti­ca, lo que co­n­tri­bu­ye a la es­ta­bi­li­dad y efi­cie­n­cia del sistema.
Nota

Desde el punto de vista técnico, un CronJob consiste en un script y un comando que se ejecutan de forma periódica a través del archivo Nextcloud cron.php. Las distintas apli­ca­cio­nes de Nextcloud detectan au­to­má­ti­ca­me­n­te cuándo cron.php realiza las tareas co­rre­s­po­n­die­n­tes.

Co­n­fi­gu­rar co­rre­c­ta­me­n­te los CronJobs evita que se acumulen tareas ru­ti­na­rias, algo que podría afectar al re­n­di­mie­n­to y pe­r­ju­di­car la ex­pe­rie­n­cia del usuario. Por eso, es re­co­me­n­da­ble —y en muchos casos necesario— activar los CronJobs en Nextcloud.

Hosting Nextcloud ad­mi­ni­s­tra­do
Tu al­ma­ce­na­mie­n­to cloud bajo control
  • Control total de datos
  • Fácil de ad­mi­ni­s­trar
  • Agrega fá­ci­l­me­n­te apli­ca­cio­nes y he­rra­mie­n­tas de co­la­bo­ra­ción

Co­n­fi­gu­ra­ción de CronJobs en Nextcloud: distintas formas

Nextcloud permite co­n­fi­gu­rar y ejecutar CronJobs mediante tres métodos distintos: AJAX, WebCron y Cron. Cada una de estas opciones tiene ventajas y de­s­ve­n­ta­jas es­pe­cí­fi­cas y es adecuada para di­fe­re­n­tes casos de uso.

AJAX

Aunque se considera la opción menos fiable, AJAX está co­n­fi­gu­ra­do como método pre­de­te­r­mi­na­do en Nextcloud. Cada vez que una persona accede a la interfaz, se ejecuta una única tarea en segundo plano. Su principal ventaja es que no requiere una co­n­fi­gu­ra­ción especial en el servidor ni el uso de servicios externos. Sin embargo, su fu­n­cio­na­mie­n­to depende de que la página se visite con fre­cue­n­cia. Si eso no ocurre, existe riesgo de pérdida de datos o fallos en la ejecución de tareas.

Caso de uso re­co­me­n­da­do: AJAX es adecuado para pequeñas in­s­ta­n­cias privadas.

WebCron

Con el método WebCron, la dirección del archivo cron.php de Nextcloud se registra en un servicio externo que se encarga de eje­cu­tar­lo con re­gu­la­ri­dad. Para usar esta opción, es im­pre­s­ci­n­di­ble poder acceder al servidor a través de Internet. Una posible li­mi­ta­ción es que el servidor web suele destinar pocos recursos a la ejecución de tareas en segundo plano.

Caso de uso re­co­me­n­da­do: WebCron es perfecto para in­s­ta­n­cias pequeñas con un máximo de cinco usuarios.

Cron

Según la do­cu­me­n­ta­ción oficial de Nextcloud, Cron es el método preferido, ya que permite ejecutar los procesos en segundo plano de forma fiable y eficaz. Al co­n­fi­gu­rar los CronJobs en Nextcloud mediante Cron con este sistema, se utiliza la función de Cron del propio sistema operativo, lo que permite llevar a cabo las tareas pro­gra­ma­das sin depender de las li­mi­ta­cio­nes del servidor web. Eso sí, para ponerlo en marcha es necesario tener acceso al servidor y contar con nociones básicas sobre la co­n­fi­gu­ra­ción de CronJobs.

Caso de uso re­co­me­n­da­do: recurrir a Cron en Nextcloud es es­pe­cia­l­me­n­te re­co­me­n­da­ble cuando se trabaja con in­s­ta­n­cias más grandes o en entornos de pro­du­c­ción.

Nota

En la guía “Ku­be­r­ne­tes CronJob: au­to­ma­ti­za­ción de tareas”, te mostramos cómo au­to­ma­ti­zar tareas definidas en Ku­be­r­ne­tes.

Co­n­fi­gu­ra­ción de CronJobs en Nextcloud (Cron): in­s­tru­c­cio­nes paso a paso

Para crear CronJobs uti­li­za­n­do el servicio Cron, es necesario contar con derechos de ad­mi­ni­s­tra­dor en el servidor. A co­n­ti­nua­ción, se explica paso a paso cómo co­n­fi­gu­rar esta opción para que las tareas ru­ti­na­rias se ejecuten cada cinco minutos:

  1. Abrir Crontab: inicia sesión en tu instancia de Nextcloud y abre el archivo Crontab con el siguiente comando: sudo crontab -u www-data -e.
  2. Co­n­fi­gu­rar el CronJob: en Crontab, añade la siguiente línea de comandos: */5* ** * php -f /var/www/nextcloud/cron.php. Con ella, el archivo cron.php se ejecutará cada cinco minutos. Recuerda re­em­pla­zar la ruta /var/www/nextcloud/cron.php por la que co­rre­s­po­n­da a tu in­s­ta­la­ción actual de Nextcloud. Después, guarda los cambios.
  3. Ajustar la co­n­fi­gu­ra­ción en Nextcloud: entra en los ajustes básicos desde el apartado “Ad­mi­ni­s­tra­ción”. En la sección dedicada a las tareas en segundo plano, elige la opción “Cron” para activar esta modalidad como método pre­de­te­r­mi­na­do.
Imagen: Nextcloud: menú “Tareas en segundo plano”
En los ajustes de las tareas en segundo plano también verás la in­di­ca­ción de que Cron es la opción re­co­me­n­da­da para ejecutar Cronjobs en Nextcloud

Puedes comprobar si el CronJob se ha añadido co­rre­c­ta­me­n­te eje­cu­ta­n­do el siguiente comando: # crontab -u www-data -l. Si todo está bien co­n­fi­gu­ra­do, el resultado debería tener el siguiente aspecto:

[snip]
*/5*    **   * php -f /var/www/nextcloud/cron.php
shell
Consejo

El Nextcloud ad­mi­ni­s­tra­do de IONOS da acceso a una instancia de Nextcloud to­ta­l­me­n­te mantenida, sin que necesites tener co­no­ci­mie­n­tos técnicos previos. IONOS se encarga por completo de la ad­mi­ni­s­tra­ción del servidor para que tú solo tengas que co­n­ce­n­trar­te en tu trabajo.

La al­te­r­na­ti­va de crear CronJobs con systemd

Si tu sistema cuenta con systemd, puedes optar por gestionar los CronJobs de Nextcloud a través de este gestor de sesiones y servicios. Systemd está presente por defecto en muchas di­s­tri­bu­cio­nes de Linux y permite programar tareas mediante te­m­po­ri­za­do­res, lo que brinda un control más preciso sobre su ejecución. Esta al­te­r­na­ti­va resulta es­pe­cia­l­me­n­te útil en entornos ge­s­tio­na­dos desde el servidor.

Se­r­vi­do­res dedicados
Re­n­di­mie­n­to e in­no­va­ción
  • Pro­ce­sa­do­res de última ge­ne­ra­ción
  • Hardware dedicado de alto re­n­di­mie­n­to
  • Centros de datos con ce­r­ti­fi­ca­ción ISO
Ir al menú principal