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

Configurar backups automáticos de PrestaShop en DirectAdmin

Actualizado el 2 de noviembre de 2025

¿Por qué es fundamental configurar backups automáticos en tu PrestaShop?

Si tienes una tienda online con PrestaShop, sabes que tu negocio depende completamente de que la web funcione 24/7. Una actualización fallida, un error en un módulo, un ataque de seguridad o incluso un error humano pueden dejar tu tienda inaccesible o, peor aún, hacer que pierdas datos de clientes, pedidos y productos. Por eso, tener un sistema de backup PrestaShop DirectAdmin no es un lujo, es una necesidad.

En este artículo, te guiaré paso a paso para que puedas configurar copias seguridad automáticas PrestaShop usando el panel de control DirectAdmin. Olvídate de hacer backups manuales cada semana. Con esta guía, lograrás un PrestaShop backup programado que se ejecutará solo, sin que tengas que acordarte. Además, te explicaré cómo verificar que todo funciona y cómo restaurar tu tienda si algo sale mal.


Requisitos previos antes de empezar

Antes de lanzarnos a la configuración, asegúrate de tener lo siguiente:

  • Acceso a DirectAdmin: Necesitas las credenciales de administrador de tu hosting (usuario y contraseña).
  • Acceso SSH (opcional pero recomendado): Para tareas avanzadas, aunque aquí usaremos solo DirectAdmin.
  • Conocimiento básico de archivos: Saber qué es un directorio y un archivo.
  • PrestaShop instalado: Asumimos que tu tienda ya funciona correctamente.

[INFO] Si tu hosting usa Syspanel (antes llamado HestiaCP), el proceso es diferente. En ese caso, accede por el puerto 2106 y busca la sección de "Backups". El resto de la lógica es similar, pero los pasos exactos varían. Esta guía está enfocada en DirectAdmin.


Paso 1: Accede a DirectAdmin y entiende las herramientas de backup

DirectAdmin incluye una herramienta nativa llamada "Backup/Transfer" o "Admin Backup", dependiendo de tu nivel de acceso. Para un usuario normal (no administrador del servidor), la opción más común es "Backup" dentro del panel de usuario.

  1. Inicia sesión en DirectAdmin con tu usuario y contraseña.
  2. En el menú principal, busca la sección "Gestión de archivos" o "Extra Features".
  3. Haz clic en "Backup/Transfer".

Aquí verás varias opciones:

  • Backup completo: Incluye todos tus archivos, bases de datos, configuraciones de email, etc.
  • Backup personalizado: Te permite elegir qué incluir.
  • Restaurar: Para volver a cargar un backup previo.

Para PrestaShop, necesitamos dos cosas esenciales:

  • Los archivos de la tienda (la carpeta donde está instalado PrestaShop).
  • La base de datos (donde están los productos, clientes, pedidos).

[TIP] No marques la opción de "Emails" a menos que quieras respaldar también tus correos. Esto hace el backup más pesado y lento.


Paso 2: Configura un backup manual de prueba (primera vez)

Antes de automatizar, es recomendable hacer un backup manual para asegurarte de que todo funciona.

  1. En Backup/Transfer, selecciona "Crear Backup".
  2. Elige "Backup Completo" o "Personalizado". Si eliges personalizado, marca:
    • Directorio de dominio: Esto incluye toda la carpeta de tu dominio (donde está PrestaShop).
    • Bases de datos: Marca la base de datos que usa tu PrestaShop (normalmente se llama algo como usuario_prestashop).
    • Listas de correo y Filtros: Déjalos sin marcar a menos que los necesites.
  3. Haz clic en "Crear Backup".

El proceso puede tardar varios minutos, dependiendo del tamaño de tu tienda. Al finalizar, verás un archivo .tar.gz en la carpeta /backups de tu usuario en DirectAdmin.

[WARNING] No confíes al 100% en el primer backup. Descarga el archivo y verifica que puedas abrirlo. Si está dañado, repite el proceso.


Paso 3: Automatiza las copias de seguridad con Cron Jobs

DirectAdmin no tiene un botón mágico de "backup automático semanal" en la interfaz de usuario normal. Para lograr un PrestaShop backup programado, necesitamos usar Cron Jobs (tareas programadas). No te asustes, es más fácil de lo que parece.

3.1. Crea un script de backup personalizado

Vamos a crear un pequeño script que hará el backup de tus archivos y base de datos. Luego, lo ejecutaremos automáticamente con un Cron.

  1. Accede al Administrador de Archivos de DirectAdmin (File Manager).
  2. Navega hasta tu directorio principal (generalmente /home/tuusuario/).
  3. Crea una carpeta llamada scripts (si no existe).
  4. Dentro de scripts, crea un archivo llamado backup_prestashop.sh.

Pega el siguiente contenido en el archivo (ajusta los valores entre [ ]):

#!/bin/bash

# Variables
FECHA=$(date +"%Y-%m-%d_%H-%M-%S")
NOMBRE_BACKUP="prestashop_backup_$FECHA"
DIRECTORIO_DOMINIO="/home/tuusuario/domains/tudominio.com/public_html"
BASE_DATOS="nombre_base_datos"
USUARIO_BD="usuario_bd"
CONTRASENA_BD="contraseña_bd"
DIRECTORIO_DESTINO="/home/tuusuario/backups"

# Crear directorio de destino si no existe
mkdir -p $DIRECTORIO_DESTINO

# Backup de archivos (comprimir la carpeta de PrestaShop)
tar -czf "$DIRECTORIO_DESTINO/$NOMBRE_BACKUP.tar.gz" -C $DIRECTORIO_DOMINIO .

# Backup de la base de datos
mysqldump -u $USUARIO_BD -p$CONTRASENA_BD $BASE_DATOS > "$DIRECTORIO_DESTINO/$NOMBRE_BACKUP.sql"

# Comprimir todo en un solo archivo (opcional)
tar -czf "$DIRECTORIO_DESTINO/$NOMBRE_BACKUP_completo.tar.gz" -C $DIRECTORIO_DESTINO "$NOMBRE_BACKUP.tar.gz" "$NOMBRE_BACKUP.sql"

# Eliminar archivos temporales
rm "$DIRECTORIO_DESTINO/$NOMBRE_BACKUP.tar.gz"
rm "$DIRECTORIO_DESTINO/$NOMBRE_BACKUP.sql"

# Mensaje de éxito
echo "Backup completado: $DIRECTORIO_DESTINO/$NOMBRE_BACKUP_completo.tar.gz"

[INFO] Si no sabes el nombre de tu base de datos, búscalo en el archivo /home/tuusuario/domains/tudominio.com/public_html/config/settings.inc.php (en PrestaShop 1.6) o en app/config/parameters.php (PrestaShop 1.7). Busca la línea define('_DB_NAME_', '...');.

3.2. Sube el script y dale permisos de ejecución

  1. Guarda el archivo con el contenido anterior.
  2. En el Administrador de Archivos, haz clic derecho sobre backup_prestashop.sh y selecciona "Cambiar permisos".
  3. Pon 755 (o marca todas las casillas de ejecución para el propietario, grupo y otros).
  4. Haz clic en "Cambiar".

3.3. Configura el Cron Job

  1. En DirectAdmin, ve a "Tareas Programadas" (Cron Jobs).
  2. Haz clic en "Crear nueva tarea" o "Add Cron Job".
  3. En "Comando", escribe la ruta completa al script:
    /home/tuusuario/scripts/backup_prestashop.sh
    
  4. En "Minuto", "Hora", "Día del mes", "Mes" y "Día de la semana", define la frecuencia. Por ejemplo, para un backup diario a las 3:00 AM:
    • Minuto: 0
    • Hora: 3
    • Día del mes: *
    • Mes: *
    • Día de la semana: *
  5. Haz clic en "Crear".

[TIP] Para backups semanales, pon en "Día de la semana" el número del día (0=domingo, 1=lunes, etc.). Por ejemplo, para cada domingo a las 2:00 AM: Minuto=0, Hora=2, Día semana=0.


Paso 4: Verifica que el backup programado funciona

No te quedes con la duda. Revisa que el script se ejecutó correctamente.

  1. Después de la hora programada, accede a "Backup/Transfer" en DirectAdmin.
  2. Busca en la lista de backups el archivo con la fecha de hoy. Debería aparecer algo como prestashop_backup_2025-03-15_03-00-00_completo.tar.gz.
  3. Si no aparece, revisa el log de Cron Jobs en "Tareas Programadas" > "Ver logs". Allí verás si hubo errores.

[WARNING] Si el backup no se genera, el problema suele ser el script. Verifica que las rutas y contraseñas sean correctas. También asegúrate de que el usuario de la base de datos tenga permisos de mysqldump.


Paso 5: Buenas prácticas adicionales para tus copias seguridad automáticas PrestaShop

Configurar el backup es solo el primer paso. Para que tu estrategia sea sólida:

5.1. Almacena los backups fuera del servidor

Si el servidor se cae o es hackeado, los backups locales también pueden perderse. Te recomiendo:

  • Descargarlos manualmente cada cierto tiempo a tu PC o a un disco externo.
  • Usar un servicio de almacenamiento en la nube como Google Drive, Dropbox o Amazon S3. Hay scripts que pueden subir automáticamente el backup a estos servicios.

5.2. Prueba la restauración al menos una vez al mes

No sirve de nada tener backups si no sabes restaurarlos. Simula un escenario de desastre:

  1. Crea una copia de tu tienda en un subdominio o en un entorno local.
  2. Restaura el backup siguiendo los pasos inversos (descomprimir archivos e importar la base de datos).
  3. Verifica que la tienda funcione correctamente.

5.3. Programa backups diferenciales (opcional)

Si tu tienda es muy grande, los backups completos diarios pueden ocupar mucho espacio. Puedes combinar un backup completo semanal con backups diferenciales diarios (solo los cambios). Esto es más avanzado y requiere scripts más complejos.


Preguntas frecuentes (FAQ) sobre backup PrestaShop en DirectAdmin

¿Cuánto espacio necesito para los backups?

Depende del tamaño de tu PrestaShop. Una tienda pequeña (100 productos, sin imágenes pesadas) puede ocupar 200-500 MB. Una tienda grande con muchas imágenes puede ocupar varios GB. Calcula que cada backup completo ocupará ese espacio. Si haces backups diarios, en una semana tendrás 7 veces ese tamaño.

¿Puedo hacer backups desde el panel de PrestaShop?

Sí, PrestaShop tiene un módulo nativo de "Backup" en el menú "Parámetros de la tienda > Mantenimiento". Pero solo respalda la base de datos, no los archivos (imágenes, módulos, temas). Por eso es mejor usar DirectAdmin.

¿Qué hago si el backup falla por límite de tiempo de ejecución?

Los scripts de backup pueden exceder el tiempo máximo permitido por el servidor (generalmente 30 segundos en Cron Jobs). Solución: divide el backup en partes más pequeñas o usa un script que no tenga límite de tiempo (como ejecutarlo via SSH).

¿Mi hosting con Syspanel (HestiaCP) permite esto?

Si usas Syspanel, accede por el puerto 2106. La lógica es similar, pero las herramientas se llaman diferente. En Syspanel, busca "Backups" en el menú principal y programa desde allí. No necesitas crear scripts manuales, ya que Syspanel tiene un sistema de backups automáticos más integrado.

¿Puedo restaurar un backup en otro servidor?

Sí, siempre que el nuevo servidor tenga la misma versión de PHP, MySQL y PrestaShop. El proceso es: subir los archivos, importar la base de datos y ajustar el archivo de configuración (settings.inc.php o parameters.php) con los nuevos datos de conexión.


Conclusión: No esperes a que sea demasiado tarde

Configurar un backup PrestaShop DirectAdmin automático es un proceso que te llevará menos de 30 minutos, pero que puede ahorrarte días o semanas de trabajo si algo sale mal. Con los pasos que te he dado, tendrás copias seguridad automáticas PrestaShop funcionando sin que tengas que preocuparte.

Recuerda:

  • Usa Cron Jobs para programar tu PrestaShop backup programado.
  • Verifica que los backups se generan correctamente.
  • Almacena copias fuera del servidor.
  • Prueba la restauración periódicamente.

Si tienes dudas, vuelve a leer esta guía o contacta con tu proveedor de hosting. ¡Tu tienda online te lo agradecerá!

¿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