Como eliminar copias de cursos hechas por los profesores

Re: Como eliminar copias de cursos hechas por los profesores

de Héctor Noel González García -
Número de respuestas: 4

Hola. 

Tego un caso similar, pero con menos cursos y hasta donde sé, cada copia de seguridad de un curso se guarda en su propia carpeta (al menos, así sucedía en versiones anteriores de Moodle). 

Saludos. 

Héctor Noel González García. 

En respuesta a Héctor Noel González García

Re: Como eliminar copias de cursos hechas por los profesores

de Amado Urias G. -

Hola Héctor, gracias por la aportación.

Estoy usando Moodle desde la versión 1.9 y antes si podías identificar esos archivos desde el moodledata, había una carpeta con el ID cada curso, pero hoy en día (Moodle 3.5) ha cambiado la distribución de esos archivos (no sé desde qué versión):

Ahora tenemos los folders "cache,  filedir,  lang,  localcache,  lock,  models,  muc,  oldlang,  sessions,  temp,  trashdir,  upgradelogs" y dentro de "filedir" hay folders nombrados con dos dígitos hexadecimales y cuando llegas a un archivo final, el nombre del archivo es una cadena larga también hexadecimal sin extensión.

Ya busqué los archivos *.mbz y no hay dentro de moodledata, por eso entré a ver la estructura de la misma.

Creo que la solución tendría que ser desde la Administración web de Moodle por medio de algún plugins (aún no encuentro uno que me sirva).


Pendientes y saludos.


En respuesta a Amado Urias G.

Re: Como eliminar copias de cursos hechas por los profesores

de Jose Luis Martin Jimenez -
Imagen de Moodlers de gran ayuda

Hola, Amado.

No conozco ningún plugin para hacer algo así, pero si tienes acceso a la base de datos (MySQL o del tipo que sea) con alguna herramienta como PhpMyAdmin o MySQL Workbench, puedes obtener información de los archivos de backup que hayan creado "a mano" los usuarios.

En mi plataforma de pruebas de la versión 3.5 he estado investigando un poco, y quizás lo más sencillo es acceder a la tabla "mdl_files" y filtrar aquellos registros para los archivos que comienzan por "copia_de_seguridad-moodle-2..." y en los que el campo "component" sea igual a "user" (entiendo que son los creados a demanda de cualquier usuario), para obviar los creados por las copias automáticas (component = backup).

Haciéndolo así, en mi ejemplo (usando MySQL Workbench) he obtenido este resultado:


La información de la columna "contenthast" te serviría para localizar la ubicación exacta de cada archivo backup en tu servidor (dos primeros dígitos son la carpeta superior, los dos siguientes la subcarpeta y todo junto, el nombre de archivo encriptado), pero NO TE RECOMIENDO borrarlos directamente, porque entonces la base de datos quedaría inconsistente ... seguiría teniendo registrados unos archivos que han dejado de existir ... posiblemente ocasione problemas de funcionamiento más o menos tarde.

Sin embargo, aunque sea más lento, yo lo que haría sería ordenar esa tabla por tamaño (haciendo clic sobre "filesize") y según el número ID del nombre de cada archivo (copia_de_seguridad-moodle-2-course-XX-...), se puede saber a qué cursos corresponden. Ya dependería de si esos backups están en la "Zona de copia de seguridad de curso" (los podrías borrar tú mismo, si tienes acceso de administrador de la plataforma) o si están en la "Zona de copia de seguridad privada de usuario" (debería hacerlo el usuario que hizo las copias).

Bueno ... a ver si te sirve de ayuda para buscar la solución mejor en tu caso.

Saludos.