Tienes tu dominio, tu sitio funciona y todo va bien, hasta que notas cuánto tiempo gastas en tareas que se repiten: vaciar carpetas, enviar informes, revisar que los procesos internos sigan activos. Hacerlo a mano no escala, y olvidar una vez puede costar caro.
Las tareas programadas de cPanel, o cron jobs, resuelven ese problema. En esta guía de nivel intermedio aprenderás a crearlas, probarlas y ajustarlas, con ejemplos pensados para sitios de toda Latinoamérica.
Qué es una tarea programada (cron job) y por qué te conviene conocerla
Una tarea programada, conocida en el mundo del hosting como cron job, es una orden que le dejas anotada a tu cuenta para que se ejecute sola, a la hora y con la frecuencia que elijas. Es como poner una alarma en el celular, pero en lugar de sonar, hace algo útil por ti: ejecutar un archivo, limpiar una carpeta o enviar un aviso.
El nombre viene de cron, el reloj interno de los sistemas Linux, que revisa cada minuto si hay alguna tarea pendiente. No necesitas programar nada complicado: en cPanel hay una pantalla con casillas para completar, y solo debes entender cuatro ideas simples: qué se ejecuta, cuándo, con qué frecuencia y a dónde llega el aviso del resultado.
Conocer esta herramienta marca una diferencia enorme: pasas de repetir tareas a mano todos los días a dejar que tu web trabaje mientras tú descansas.
Para qué sirve: usos reales que puedes automatizar hoy
Las tareas programadas no son solo para técnicos. Estos son los usos más comunes entre emprendedores y pequeños negocios:
- Tareas internas de WordPress: publicar entradas programadas a tiempo, enviar correos de la tienda y revisar actualizaciones.
- Limpieza de archivos: borrar exportaciones, copias temporales o reportes viejos que ocupan espacio sin necesidad.
- Reportes automáticos: recibir cada semana un resumen de ventas, formularios recibidos o visitas.
- Copias de respaldo propias: lanzar un script que guarda tus archivos importantes en un horario fijo.
- Sincronización: actualizar un catálogo, una lista de precios o un stock desde una planilla.
La regla de oro es sencilla: si haces algo igual todos los días o todas las semanas, probablemente se pueda programar. Y cada tarea que automatizas es una preocupación menos en tu agenda.
Preparativos: reúne estos datos antes de crear la tarea
Dedicar unos minutos a preparar el terreno evita errores y repeticiones. Antes de entrar a cPanel, asegúrate de contar con lo siguiente:
- Tu usuario y contraseña de cPanel, para ingresar sin demoras.
- El nombre de usuario de la cuenta, que aparece dentro de las rutas, como /home/tuusuario/public_html/.
- La ubicación del archivo o script que deseas ejecutar; la verás en el Administrador de archivos.
- El horario ideal: piensa en qué momento del día tu web recibe menos visitas.
- Un respaldo actualizado de tu sitio y de tu base de datos.
No saltees el respaldo. Las tareas programadas hacen lo que les indicas, sin pedir confirmación, y tener una copia reciente te permite volver atrás con tranquilidad si algo no sale como esperabas.
Paso 1: encuentra «Tareas Cron» dentro de cPanel
Entra a tu cPanel y recorre la pantalla principal hasta llegar al bloque Avanzado. Allí verás el ícono Tareas Cron, que en otras versiones se muestra como Cron Jobs. Un atajo útil: escribe «cron» en el buscador superior y selecciona el resultado.
La pantalla se divide en tres partes: primero, un campo para el correo de notificaciones; después, el formulario para agregar una tarea nueva; y por último, el listado de las tareas existentes, donde puedes modificarlas o borrarlas cuando quieras.
No te preocupes si el listado aparece vacío al principio. Significa simplemente que todavía no programaste nada, y que tienes la hoja en blanco para empezar de forma ordenada.
Paso 2: elige a qué correo llegarán los avisos
En la parte superior, el campo Correo electrónico de Cron define a dónde se envía el resultado de cada ejecución. Escribe una dirección que revises de verdad, preferentemente con tu dominio propio, y presiona Actualizar el correo electrónico.
Esto es útil mientras estás probando, porque cada vez que la tarea se ejecute recibirás un mensaje con lo que mostró en pantalla, incluidos los errores. Si algo falla, ese mensaje te dirá qué ocurrió.
Cuando la tarea ya funcione bien, es recomendable silenciar los avisos para no llenar tu bandeja. Más adelante verás cómo hacerlo agregando un pequeño fragmento al final del comando. Lo importante por ahora es que, durante la etapa de pruebas, los avisos estén activos y llegando a un correo que leas a diario.
Paso 3: entiende los cinco campos de horario
El corazón de una tarea cron son sus cinco casillas de tiempo. Se leen siempre en este orden:
- Minuto (0 a 59)
- Hora (0 a 23, en formato de 24 horas)
- Día del mes (1 a 31)
- Mes (1 a 12)
- Día de la semana (0 a 6, donde 0 es domingo)
Un asterisco (*) significa «todos». Entonces, 30 3 * * * se lee: «a los 30 minutos de las 3 de la madrugada, todos los días». Y 0 9 * * 1 es: «a las 9:00, todos los lunes». Si prefieres no escribir nada a mano, cPanel incluye un menú desplegable de Configuración común con opciones como «una vez al día» o «cada 15 minutos», que completa las casillas por ti.
Paso 4: redacta el comando de la tarea
El campo Comando es donde le dices a tu cuenta qué hacer. Para lanzar un archivo PHP, el formato habitual es:
/usr/local/bin/php /home/tuusuario/public_html/script.php
Fíjate en que tiene dos partes: el intérprete de PHP y la ruta completa del archivo. Cambia tuusuario por el nombre de tu cuenta y script.php por tu archivo real. Cualquier letra mal escrita, o una mayúscula de más, hará que la tarea no encuentre el archivo, así que copia la ruta tal como aparece en el Administrador de archivos.
Cuando ya estés seguro de que todo anda bien, puedes evitar el exceso de correos agregando al final >/dev/null 2>&1. La tarea sigue corriendo con normalidad, pero sin avisarte en cada ejecución. Hazlo recién después de probarla, nunca antes.
Paso 5: haz una prueba rápida antes del horario final
No esperes a la madrugada para averiguar si tu tarea funciona. Programa una ejecución para dentro de unos cinco minutos y aguarda. Luego comprueba: ¿llegó el aviso por correo?, ¿el script cumplió su función?, ¿hay algún error en el mensaje?
Si el resultado es correcto, vuelve al listado, edita la tarea y déjala con el horario definitivo. Si hubo un fallo, no te asustes: las causas más frecuentes son una ruta con una letra equivocada, un archivo sin permisos de ejecución o una versión de PHP que no corresponde al script.
Este método de probar primero con un margen corto te ahorra días de incertidumbre. Es mucho más práctico corregir un detalle en cinco minutos que descubrir, una semana después, que la tarea jamás se ejecutó.
Ejemplo práctico: limpiar archivos temporales cada semana
Un estudio de diseño de Medellín aloja su portafolio en tudominio.com y recibe archivos de clientes que se acumulan en una carpeta llamada temporales. Con el tiempo ocupan espacio y nadie recuerda borrarlos. La solución es una tarea que elimina lo que tenga más de 30 días.
El comando sería: find /home/tuusuario/temporales -type f -mtime +30 -delete. Antes de programarlo, ejecútalo sin la opción -delete para ver la lista de archivos afectados y confirmar que son los correctos. Luego, en Tareas Cron, elige minuto 0, hora 3 y día de la semana 0 para que corra los domingos de madrugada.
Recuerda la regla de oro: ten siempre una copia de seguridad reciente, porque este tipo de tarea elimina sin preguntar. Y si tu equipo trabaja en distintos países, anota la zona horaria en tu documentación para evitar confusiones sobre cuándo se ejecuta.
Cuida los recursos de tu cuenta: la frecuencia correcta
Cada tarea consume una pequeña parte de los recursos de tu plan, y tú tienes el control de cuánto. Una tarea que corre cada minuto cuando bastaría con cada hora multiplica el consumo sin ningún beneficio. Por eso, la pregunta clave es: ¿con qué frecuencia necesito realmente esto?
Algunas pautas prácticas:
- Los reportes y las limpiezas suelen alcanzar con una vez al día.
- Las tareas internas de WordPress funcionan bien cada 15 o 30 minutos.
- Evita que dos tareas pesadas coincidan en el mismo minuto: escalónalas separándolas por 10 o 15 minutos.
- Elige horarios de baja actividad, como la madrugada, para procesos que mueven muchos archivos.
Ajustar estos detalles mantiene tu web ágil y evita que una tarea mal calibrada afecte la experiencia de tus visitantes.
Errores comunes y cómo corregirlos
Si la tarea no hace lo que esperabas, repasa esta lista. Resuelve la gran mayoría de los casos:
- «No such file or directory»: la ruta está mal escrita. Cópiala desde el Administrador de archivos y pégala de nuevo.
- «Permission denied»: el archivo no tiene permiso de ejecución. Revisa los permisos desde el Administrador de archivos; para scripts suele servir el valor 644 o 755.
- La tarea nunca se ejecuta: verifica que no haya espacios de más en los cinco campos de horario.
- Se ejecuta a una hora inesperada: recuerda que el servidor puede usar una zona horaria distinta a la tuya.
- Llegan demasiados correos: agrega >/dev/null 2>&1 al final del comando.
Cuando algo falle, cambia una sola cosa por vez y vuelve a probar. Así identificas exactamente qué corrigió el problema.
Lista de verificación para cerrar el trabajo con tranquilidad
Antes de cerrar el panel, marca cada punto de esta lista y quedarás con todo bajo control:
- Cuento con un respaldo reciente de mi sitio y mi base de datos.
- La ruta del script está copiada tal cual figura en el Administrador de archivos.
- Ejecuté una prueba corta y el resultado fue el esperado.
- El horario elegido evita las horas de más visitas.
- Apagué las notificaciones solo cuando la tarea ya era confiable.
- Dejé escrito, en algún lugar seguro, qué hace cada tarea y cuándo se ejecuta.
Ese registro escrito es una pequeña costumbre con un gran valor: dentro de seis meses, cuando necesites cambiar algo, sabrás de inmediato qué hacía cada tarea y por qué la creaste.
Conclusión: la rutina que te devuelve tiempo
Ahora conoces el camino completo: abrir Tareas Cron, entender los cinco campos del horario, escribir el comando, probarlo con calma y cuidar la frecuencia. Con esos pasos puedes automatizar casi cualquier rutina de tu sitio.
Escoge una tarea pequeña, hazla funcionar y celebra el resultado. A partir de ahí, cada automatización será más fácil que la anterior. Tu tiempo es el recurso más valioso de tu proyecto, y programar tareas es una de las formas más simples de cuidarlo.