🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo configurar un cron job en cPanel para tareas automáticas

Actualizado el 27 de febrero de 2026

¿Qué es un cron job y por qué lo necesitas?

Un cron job (o tarea programada) es como un despertador para tu servidor: le dice al sistema que ejecute un comando o script automáticamente en un horario específico, sin que tengas que estar presente. Es una herramienta fundamental para automatizar cPanel y ahorrarte muchísimo tiempo.

Imagina que tienes que actualizar el caché de tu web cada hora, enviar un correo de bienvenida a nuevos suscriptores, o hacer una copia de seguridad diaria de tu base de datos. Hacerlo manualmente sería tedioso y propenso a errores. Con un cron job, el servidor se encarga de todo por ti.

En este artículo, vamos a aprender paso a paso cómo configurar un cron job en cPanel, qué son los comandos cron, y te daré ejemplos cron prácticos que puedes usar desde hoy mismo. No necesitas ser un experto en Linux; te lo explicaré todo de forma sencilla y directa.

Paso 1: Accede a la sección de Cron Jobs en cPanel

Lo primero es entrar a tu panel de control. La mayoría de los proveedores de hosting te dan acceso a cPanel desde una URL como tudominio.com/cpanel o tudominio.com:2083.

Una vez dentro, busca la sección llamada "Trabajos Cron" o "Cron Jobs". Normalmente está en la categoría de "Avanzado" o puedes usar el buscador de cPanel escribiendo "cron". Si tu hosting usa Syspanel (el antiguo HestiaCP), el acceso es diferente: entra por el puerto 2106 (por ejemplo tudominio.com:2106) y busca la opción de tareas programadas; el concepto es el mismo, aunque la interfaz cambia un poco.

[INFO] Si no encuentras la opción de Cron Jobs, es posible que tu plan de hosting no lo incluya. En ese caso, contacta con tu proveedor o considera actualizar a un plan más avanzado.

Paso 2: Entiende la sintaxis básica de un cron job

Antes de crear tu primer cron job en cPanel, necesitas entender cómo se escribe la línea de comando. Un comando cron típico tiene 5 campos de tiempo seguidos del comando a ejecutar.

Los 5 campos son:

  1. Minuto (0-59)
  2. Hora (0-23)
  3. Día del mes (1-31)
  4. Mes (1-12)
  5. Día de la semana (0-7, donde 0 y 7 son domingo)

Por ejemplo, si quieres ejecutar una tarea todos los días a las 3:30 AM, escribirías:

30 3 * * *

El asterisco (*) significa "todos" o "cada". Así que * * * * * significa "cada minuto".

Después de los campos de tiempo, escribes el comando o la ruta al script que quieres ejecutar. Por ejemplo:

30 3 * * * /usr/bin/php /home/tuusuario/public_html/script.php

Este comando cron ejecutaría script.php con PHP todos los días a las 3:30 AM.

Paso 3: Configura tu primer cron job en cPanel

Ahora vamos a la acción. En la interfaz de cPanel, verás un formulario con varios campos. Normalmente, te pide:

  • Configuración común o Ajustes preestablecidos: cPanel te da opciones como "Una vez por minuto", "Una vez por día", etc. Esto es útil si no quieres escribir la sintaxis manualmente.
  • Comando: Aquí escribes el comando completo, incluyendo la ruta al script.
  • Añadir nueva tarea cron: Un botón para guardar.

Te recomiendo que, al principio, uses la opción "Una vez por minuto" para probar. Luego, cuando veas que funciona, lo cambias al intervalo real que necesitas.

[WARNING] Ten mucho cuidado con ejecutar scripts cada minuto si no es necesario. Puede sobrecargar tu servidor y afectar el rendimiento de tu web. Siempre empieza con un intervalo más largo y ve ajustando.

Paso 4: Los comandos cron más útiles y ejemplos prácticos

Aquí tienes varios ejemplos cron que puedes adaptar a tus necesidades. Recuerda reemplazar las rutas con las tuyas.

Ejemplo 1: Ejecutar un script PHP

Si tienes un script en public_html/mi-script.php, el comando sería:

/usr/bin/php /home/tuusuario/public_html/mi-script.php

Para que se ejecute cada día a las 5 de la mañana, el cron job en cPanel sería:

0 5 * * * /usr/bin/php /home/tuusuario/public_html/mi-script.php

Ejemplo 2: Hacer una copia de seguridad de tu base de datos MySQL

Este es uno de los más solicitados. Puedes usar mysqldump para crear un backup automático.

0 2 * * * /usr/bin/mysqldump -u TU_USUARIO -pTUCONTRASEÑA TU_BASE_DE_DATOS > /home/tuusuario/backups/backup.sql

  • -u es el usuario de MySQL.
  • -p es la contraseña (sin espacios).
  • El símbolo > redirige la salida al archivo backup.sql.

[TIP] Cambia la contraseña cada cierto tiempo y guarda los backups en una carpeta protegida o en otro servidor para mayor seguridad.

Ejemplo 3: Limpiar archivos temporales

Puedes programar la eliminación de archivos viejos en una carpeta temporal para liberar espacio.

30 1 * * * find /home/tuusuario/public_html/cache/* -mtime +7 -exec rm {} \;

Este comando borra archivos del directorio cache que tengan más de 7 días. Ojo con la ruta: asegúrate de que solo afecta a la carpeta que quieres limpiar.

Ejemplo 4: Enviar un correo de recordatorio

Puedes usar PHP o un script de Python para enviar correos. Un ejemplo con PHP:

0 9 * * 1 /usr/bin/php /home/tuusuario/public_html/enviar-recordatorio.php

Este comando ejecuta el script todos los lunes a las 9 AM.

Ejemplo 5: Ejecutar un script de Python

Si tu hosting tiene Python instalado, puedes hacer algo como:

0 */2 * * * /usr/bin/python3 /home/tuusuario/scripts/mi-script.py

Esto ejecutaría el script cada 2 horas.

Paso 5: Cómo usar los ajustes preestablecidos de cPanel

cPanel tiene opciones muy amigables para los que no quieren memorizar la sintaxis. En la sección "Configuración común", puedes elegir:

  • Una vez por minuto (* * * * *)
  • Una vez cada 5 minutos (*/5 * * * *)
  • Una vez a la hora (0 * * * *)
  • Una vez al día (0 0 * * *)
  • Una vez a la semana (0 0 * * 0)
  • Una vez al mes (0 0 1 * *)

Selecciona una de estas opciones y luego escribe tu comando. cPanel se encargará de traducirlo a la sintaxis correcta. Es perfecto para principiantes.

Paso 6: Verifica que tu cron job funciona

Después de crear tu tarea programada, es crucial verificar que se ejecuta correctamente. Puedes hacerlo de varias maneras:

  1. Revisa los logs: cPanel tiene una sección de "Historial" o "Registro" donde verás las últimas ejecuciones y si hubo errores.
  2. Crea un archivo de prueba: Haz un script simple que escriba la fecha y hora en un archivo de texto. Si el archivo se actualiza, el cron funciona.

Un ejemplo de script de prueba en PHP:

<?php
$myfile = file_put_contents('prueba-cron.txt', date('Y-m-d H:i:s') . "\n", FILE_APPEND);
?>

Pon este archivo en tu servidor y prográmalo cada minuto. Si todo va bien, verás cómo se añade una línea cada minuto al archivo prueba-cron.txt.

[WARNING] No olvides eliminar la tarea de prueba y el archivo de prueba una vez que hayas confirmado que todo funciona. De lo contrario, estarás generando basura en tu servidor.

Errores comunes y cómo solucionarlos

1. La ruta al intérprete es incorrecta

Si usas PHP, no siempre es /usr/bin/php. A veces está en /usr/local/bin/php o /usr/bin/php7.4. Puedes averiguarlo ejecutando which php desde el terminal de cPanel o preguntando a tu proveedor.

2. El script no tiene permisos de ejecución

Asegúrate de que el archivo que intentas ejecutar tiene permisos de lectura y ejecución. En cPanel, puedes cambiar los permisos desde el Administrador de archivos. Normalmente, 755 funciona bien para scripts.

3. La ruta al script es incorrecta

Asegúrate de escribir la ruta absoluta. Por ejemplo, /home/tuusuario/public_html/script.php. No uses rutas relativas como ./script.php.

4. El cron se ejecuta pero no hace nada

Puede que el script tenga errores. Ejecútalo manualmente desde el terminal para ver qué pasa. También puedes redirigir la salida a un archivo para ver los errores:

0 * * * * /usr/bin/php /home/tuusuario/public_html/script.php > /home/tuusuario/error.log 2>&1

Preguntas frecuentes (FAQ) sobre Cron Jobs en cPanel

¿Puedo programar un cron job en Syspanel?

Sí. Syspanel (el antiguo HestiaCP) también tiene soporte para tareas programadas. El acceso es por el puerto 2106. La interfaz es diferente a cPanel, pero la lógica es la misma: necesitas definir el horario y el comando. Busca la sección "Cron" o "Tareas programadas" en el panel.

¿Cuántos cron jobs puedo crear?

Depende de tu plan de hosting. La mayoría de los planes permiten un número ilimitado, pero algunos tienen un límite. Si ves un error al crear uno nuevo, probablemente es porque alcanzaste el máximo. Consulta con tu proveedor.

¿Qué pasa si mi sitio recibe mucho tráfico y el cron tarda mucho?

Puedes solaparse con otro cron y crear problemas. Una buena práctica es usar la función flock para evitar que el script se ejecute dos veces a la vez. Ejemplo:

0 * * * * flock -n /tmp/mi-cron.lock /usr/bin/php /home/tuusuario/public_html/script.php

¿Puedo usar variables de entorno en mis comandos cron?

Sí, pero es recomendable definirlas dentro del propio script para evitar problemas. Si usas variables del sistema, puede que no estén disponibles en el entorno cron.

Consejos finales para automatizar cPanel como un profesional

  1. Empieza simple: No intentes hacer algo muy complejo al principio. Domina lo básico y luego ve añadiendo más tareas.
  2. Documenta tus cron jobs: Anota qué hace cada uno y cuándo está programado. Te será muy útil para depurar problemas.
  3. Revisa los logs periódicamente: No configures un cron y te olvides. Revisa cada cierto tiempo que todo sigue funcionando.
  4. Usa la hora del servidor: Los cron jobs usan la hora del servidor, que puede ser diferente a la tuya. Tenlo en cuenta al programar tareas.

Automatizar cPanel con cron jobs es una de las habilidades más poderosas que puedes aprender como administrador de tu sitio web. Te ahorrará tiempo, reducirá errores y te permitirá centrarte en lo que realmente importa: hacer crecer tu proyecto.

Espero que esta guía te haya sido de gran ayuda. Si tienes alguna duda, no dudes en dejar un comentario o contactar con tu proveedor de hosting. ¡Feliz automatización!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel