UNA PREGUNTA FACIL: COMO SE EXCLUYEN DIRECTORIOS DE LA COPIA DE SEGURIDAD CON BACKUP AND MIGRATE?

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
narcisoweb's picture

Al hacer las copias de seguridad con Backup and Migrate, se guardan en la carpeta sites/default/files/private/backup_migrate/scheduled.

Cuando hace la siguiente copia de seguridad se copian tambien ese subdirectorio, por lo que el tamaño de la copia sube casi exponencialmente.

Tengo configuradas las copias en
BASE DE DATOS PREDETERMINADA OPCIONES DE COPIA DE SEGURIDAD
Excluir las siguientes tablas por completo
-- las que vienen por defecto (las de cache)

DIRECTORIO DE ARCHIVOS PÚBLICOS OPCIONES DE COPIA DE SEGURIDAD
Excluir los siguientes archivos o directorios
--- backup_migrate (solo este)

SITIO COMPLETO (CÓDIGO, ARCHIVOS Y BASE DE DATOS) OPCIONES DE COPIA DE SEGURIDAD
Excluir los siguientes archivos o directorios
--- public://backup_migrate
--- /tmp

Sin embargo, no excluye el subdirectorio backup_migrate.
Supongo que tengo la ruta mal puesta.
Podríais indicarme como escribir la ruta correctamente, teniendo en cuenta que la ruta completa hasta la carpeta donde se guardan la base de datos es:

sites/default/files/private/backup_migrate/scheduled.

Comments

private

frankgil's picture

La carpeta de backup_migrate está dentro de archivos privados, por tanto sería:

private://backup_migrate

Muchas gracias frangil

narcisoweb's picture

Gracias Frangil, la mayor duda que tenia es como se especifica la ruta. y también como puedo hacer que la copia se guarde en el servidor, pero en una carpeta anterior a la raíz donde está instalado Drupal.

  • No es necesario escribir la ruta anterior a la carpeta private?
  • ¿ Porqué los " : // " entre private y la siguiente subcarpeta "backup_migrate" ?

Esto lo pregunto porque en muchas sitios hay que poner rutas y nunca tengo claro cual es la nomenclatura correcta para ello. Mientras valga la que viene por defecto todo bien, pero cuando hay que cambiarla o viene en blanco, ya tengo un problema.

También me gustaría guardar las copias en una carpeta del mismo rango en la que está instalado Drupal, pero cuando lo he intentado, un mensaje de Drupal me dice que no puedo escribir en esa carpeta.

¿Conoces algun link donde se hable de estos temas?

Muchas gracias y perdona por abusar de tus conocimientos, pero como habrás deducido estoy aun un poco "pez".

Desde Configuración ->

frankgil's picture

Desde Configuración -> Sistema de archivos especificamos la Ruta al sistema privado de archivos. Si sólo pones "private", la crea dentro de la ruta pública, aunque esté protegida, por lo que internamente queda en sites/default/files/private

Independientemente de dónde estén ambas carpetas, públicas y privadas, las rutas se especifican en formato URI, public://carpeta o private://carpeta. Sólo especificamos la carpeta concreta y nunca la ruta completa, ya que se susceptible de cambio desde la configuración.

Si quieres que la carpeta "private" esté fuera del raíz de drupal puedes probar con

../private

o con la ruta completa según la configuración de tu servidor:

/home/usuario/private

Así que lo primero es decidir dónde quieres que se guarden los archivos públicos y privados y luego ya dejas que cada módulo guarde sus cosas sin interferir.

Suerte!!

Fran Gil
www.forcontu.com

Probando las rutas

narcisoweb's picture

Muchísimas gracias Frangil por la ayuda que me estas prestando.

Tengo que probar lo que me dices para sacar la carpeta private fuera del raíz de Drupal, pero de momento estoy probando como hacer que se excluya la carpeta donde están las copias de seguridad anteriores.

De momento no lo consigo. A pesar de haber puesto la ruta; private://backup_migrate, en xxx se han vuelto a copiar.

Ahora voy a probar poniendo en la configuración del perfil de la copia de seguridad:

En: OCULTAR DIRECTORIO DE ARCHIVOS PÚBLICOS OPCIONES DE COPIA DE SEGURIDAD
Excluir los siguientes archivos o directorios
private://backup_migrate/scheduled (que es la ruta exacta que pone en es destino de "COPIAS DE SEGURIDAD PROGRAMADAS")

En: SITIO COMPLETO (CÓDIGO, ARCHIVOS Y BASE DE DATOS) OPCIONES DE COPIA DE SEGURIDAD (que es la copia programada que hace ese perfil)
Excluir los siguientes archivos o directorios
private://backup_migrate/scheduled

A ver si asi se excluyen los ficheros de copias de seguridad guardados en /scheduled.

Por otro lado, veo que bajo tu firma está la web de Forcontu. Solo decirte que yo estoy aprendiendo Drupal con los libros de Forcontu, que me voy comprando por capítulos según los voy digiriendo. Son para mi la mejor referencia.

Un saludo y gracias por tu ayuda.

narcisoweb's picture

Después de volverme loco durante varios meses, he resuelto el problema. Solo hay que poner una ruta mas completa en los directorios a excluir. En mi caso:

sites/default/files/private/backup_migrate/scheduled
sites/default/files/private/backup_migrate/manual

No se porque, si la ruta: private://backup_migrate/manual, es suficiente para indicar cual es es destino de la copia de seguridad, no lo es para indicar que la excluya. Lo cierto es que escribiendo la ruta desde sites/.. etc. funciona perfectamente.

SI ALGUIEN SABE PORQUE, COMPLETARÍA LA SOLUCIÓN A ESTE PROBLEMA.

Por otro lado y por si ayuda a alguien, en todo este proceso, he detectado que el hecho de que se las copias de seguridad se hicieran tan grandes daba lugar a otros problemas:

  • Que cuando la copia alcanzaba tamaños de entre 700 y 1200 Mb, el sitio se ponía en mantenimiento y aunque desactivara la opción volvía a modo de mantenimiento por si solo y no había forma de quitarlo. Me di cuenta que al borrar las copias de seguridad guardadas el problema se resolvía.

  • Que igualmente, cuando se alcanzaban esos tamaños de las copias, el cron dejaba de funcionar dando un error que ahora no recuerdo.

He visto en los foros muchas preguntas sobre esto, a los que se daban soluciones un poco complejas, aumentando los Mb de no se donde, o cambiando no se que del tema, ...etc. En mi caso, ambos problemas se han resuelto no teniendo copias de seguridad de gran tamaño.

Mi sitio está en desarrollo y pesa poco, quizás cuando tenga mucho contenido, vuelva a tener ese problema y haya que aumentar algo.

SI ALGUIEN TIENE ALGÚN COMENTARIO QUE HACER A TODO ESTO, ESTARÍA BIEN EL APORTE, PORQUE YO SOY UN NOVATO Y CONVENDRÍA QUE UN EXPERTO OPINARA.

Saludos a todos, espero que a alquilen le ayude.

es sencillo

gbelot2003's picture

Coloca las carpetas de private y temp fuera de la carpeta www la que tenes tu distribución de Drupal. ejemplo:

dr_private
dr_tmp
www
----index
-----sites

les das permisos 777 a esas carpetas y las direccionas con ../dr_private en el administrador de carpetas, con eso dejas de tener problemas con cron y demas y sin necesidad de tocar extras

-Aprende a Preguntar, Pregunta para aprender- ya que -La educación es cara, cierto, pero la ignorancia cuesta mucho mas - :P

Madrid

Group organizers

Group events

Add to calendar

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: