Los Nextcloud CronJobs son procesos automáticos que ejecutan tareas recurrentes, como el mantenimiento, la sincronización o el envío de notificaciones. Para configurarlos, 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 fundamentales para mantener el buen rendimiento y la fiabilidad del software en la nube. Permiten ejecutar tareas en segundo plano de forma automatizada sin necesidad de intervención por parte del usuario. Entre estas tareas se encuentran, por ejemplo:

  • Vaciar la papelera: Nextcloud no elimina directamente los archivos borrados, sino que los traslada a una papelera. Allí también se almacenan versiones anteriores de los archivos para facilitar su recuperación. Los CronJobs eliminan estos elementos automáticamente después de un tiempo determinado, lo que ayuda a liberar espacio.
  • Actualizar con frecuencia 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 intervalos de tiempo determinados, por lo que los resultados están siempre al día.
  • Notificaciones por correo electrónico y actualizaciones de actividad: Nextcloud utiliza los CronJobs para informar a los usuarios sobre eventos como subidas en carpetas compartidas o nuevas entradas en el calendario.
  • Análisis en segundo plano de archivos: para detectar cambios realizados fuera de la interfaz de usuario, Nextcloud analiza el sistema de archivos con frecuencia. Esta tarea se automatiza mediante CronJobs.
  • Mantenimiento y limpieza: archivos temporales, datos de sesiones antiguas o entradas obsoletas en la base de datos pueden afectar al rendimiento. Los CronJobs se encargan de eliminar y optimizar estos elementos de forma automática, lo que contribuye a la estabilidad y eficiencia 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 aplicaciones de Nextcloud detectan automáticamente cuándo cron.php realiza las tareas correspondientes.

Configurar correctamente los CronJobs evita que se acumulen tareas rutinarias, algo que podría afectar al rendimiento y perjudicar la experiencia del usuario. Por eso, es recomendable —y en muchos casos necesario— activar los CronJobs en Nextcloud.

Hosting Nextcloud administrado
Tu almacenamiento cloud bajo control
  • Control total de datos
  • Fácil de administrar
  • Agrega fácilmente aplicaciones y herramientas de colaboración

Configuración de CronJobs en Nextcloud: distintas formas

Nextcloud permite configurar y ejecutar CronJobs mediante tres métodos distintos: AJAX, WebCron y Cron. Cada una de estas opciones tiene ventajas y desventajas específicas y es adecuada para diferentes casos de uso.

AJAX

Aunque se considera la opción menos fiable, AJAX está configurado como método predeterminado 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 configuración especial en el servidor ni el uso de servicios externos. Sin embargo, su funcionamiento depende de que la página se visite con frecuencia. Si eso no ocurre, existe riesgo de pérdida de datos o fallos en la ejecución de tareas.

Caso de uso recomendado: AJAX es adecuado para pequeñas instancias 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 ejecutarlo con regularidad. Para usar esta opción, es imprescindible poder acceder al servidor a través de Internet. Una posible limitación es que el servidor web suele destinar pocos recursos a la ejecución de tareas en segundo plano.

Caso de uso recomendado: WebCron es perfecto para instancias pequeñas con un máximo de cinco usuarios.

Cron

Según la documentació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 configurar 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 programadas sin depender de las limitaciones del servidor web. Eso sí, para ponerlo en marcha es necesario tener acceso al servidor y contar con nociones básicas sobre la configuración de CronJobs.

Caso de uso recomendado: recurrir a Cron en Nextcloud es especialmente recomendable cuando se trabaja con instancias más grandes o en entornos de producción.

Nota

En la guía “Kubernetes CronJob: automatización de tareas”, te mostramos cómo automatizar tareas definidas en Kubernetes.

Configuración de CronJobs en Nextcloud (Cron): instrucciones paso a paso

Para crear CronJobs utilizando el servicio Cron, es necesario contar con derechos de administrador en el servidor. A continuación, se explica paso a paso cómo configurar esta opción para que las tareas rutinarias 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. Configurar 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 reemplazar la ruta /var/www/nextcloud/cron.php por la que corresponda a tu instalación actual de Nextcloud. Después, guarda los cambios.
  3. Ajustar la configuración en Nextcloud: entra en los ajustes básicos desde el apartado “Administración”. En la sección dedicada a las tareas en segundo plano, elige la opción “Cron” para activar esta modalidad como método predeterminado.
Imagen: Nextcloud: menú “Tareas en segundo plano”
En los ajustes de las tareas en segundo plano también verás la indicación de que Cron es la opción recomendada para ejecutar Cronjobs en Nextcloud

Puedes comprobar si el CronJob se ha añadido correctamente ejecutando el siguiente comando: # crontab -u www-data -l. Si todo está bien configurado, el resultado debería tener el siguiente aspecto:

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

El Nextcloud administrado de IONOS da acceso a una instancia de Nextcloud totalmente mantenida, sin que necesites tener conocimientos técnicos previos. IONOS se encarga por completo de la administración del servidor para que tú solo tengas que concentrarte en tu trabajo.

La alternativa 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 distribuciones de Linux y permite programar tareas mediante temporizadores, lo que brinda un control más preciso sobre su ejecución. Esta alternativa resulta especialmente útil en entornos gestionados desde el servidor.

Servidores dedicados
Rendimiento a través de innovación
  • Tu propio servidor en un hardware dedicado
  • Integración en el cloud y facturación por minuto
  • Respaldados por procesadores Intel® Xeon® y AMD
¿Le ha resultado útil este artículo?
Ir al menú principal