Migration und Update auf neuen Server - moodledata beschädigt

Migration und Update auf neuen Server - moodledata beschädigt

von Daniel S -
Anzahl Antworten: 5
Hallo,

ich zog vor vier Wochen mit Moodle 2.6.2 bei einem Hoster auf einen neuen Pleskserver mit den notwendigen PHP-Versionen für das Update 3.1.
Dazu sicherte ich die Datenbank als .sql und zip und moodledata per WINSCP ("Standard" als Transfermodus) als zip und komplett auf einen Windowsrechner.  Die Domain des alten Servers ist nicht mehr zu erreichen.

Ich installierte zuerst 2.7 (hier musste die DB dann auf MariaDB gesetzt werden) und dann 3.1.

Das Problem ist jetzt, dass alles zwar da ist: der alte Aufbau, die Links in den Kursen funktionieren. Läd man jedoch Dateien (doc, pdf, jpg) runter, werden diese als beschädigt gemeldet.

Ich habe diverse ältere Server-Backups meines Vorgängers hochgeladen, die mit Filezilla im Transfermodus "automatisch" erstellt wurden. Alle bringen die gleiche Fehlermeldung beim Anklicken einer Datei in Moodle, dass die Datei beschädigt sei.

Kann mir jemand helfen?

Datenbank-Server

  • Server: Localhost via UNIX socket
  • Server-Typ: MariaDB
  • Server-Version: 10.0.29-MariaDB - MariaDB Server
  • Protokoll-Version: 10
  • Benutzer: *****
  • Server-Zeichensatz: UTF-8 Unicode (utf8)

Webserver

  • nginx/1.9.9
  • Datenbank-Client Version: libmysql - mysqlnd 5.0.11-dev - 20120503 - $Id: 76b08b24596e12d4553bd41fc93cccd5bac2fe7a $
  • PHP-Erweiterung: mysqliDokumentation curlDokumentation mbstringDokumentation
  • PHP-Version: 5.6.27


Mittelwert:  -
Als Antwort auf Daniel S

Re: Migration und Update auf neuen Server - moodledata beschädigt

von Daniel S -
Wenn ich fixgz über Windows-CMD als Admin auf moodledata.zip anwende (moodledata.zip in den fixgz-Ordner kopiert) per fixgz moodledata.zip repariert.zip, wird nur der erste Ordner "Archiv" in der Repariert.zip angezeigt.

Beim Öffnen mit einem Entpackprogramm kommt die Meldung unerwartetes Archivende.
Als Antwort auf Daniel S

Re: Migration und Update auf neuen Server - moodledata beschädigt

von Daniel S -

Hallo nochmal,


wenn ich die DB nach dem Rat von Ken (https://moodle.org/mod/forum/discuss.php?d=314865) mit select contenthash, filename from mdl_files

durchforste, finde ich in den letzten Zeilen der DB mehrere backups.mbz.

Kann ich mit denen evtl. die Kurse mit den jetzt korrupten Daten retten?

Ich habe nämlich auch einen alten Kurs von mir perfekt mit einem mbz von meiner HDD zuhause rekonstruieren können...

Als Antwort auf Daniel S

Re: Migration und Update auf neuen Server - moodledata beschädigt

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Hallo Daniel

Da sich niemand gemeldet hat, versuche ich, obwohl ich nichts mit Microsoft am Hut habe.
zwinkernd

Also, du hast die Datenbank und Moodle-Datenverzeichnis einer 2.6.2 Installation (was war der Server?) auf einen anderen Server (Linux, Nginx 1.9.9, Maria DB 10.0.29) übertragen, Moodle 2.7 direkt geholt. Ich nehme an, beim ersten Einloggen hat Moodle einen Upgrade erkannt und dich durch die Upgradeprozedere geführt. Nicht ganz nach https://docs.moodle.org/26/de/Moodle_Migration, denn es war eine Migration und ein Upgrade in einem. Trotzdem einwandfrei gelaufen, bis auf die "beschädigten" Bilder. Und es sind nur die Bilder, andere hochgeladene Dateien, Bsp. PDFs, haben das Problem nicht. Richtig?

"Beschädigte" Bilder können sehr viele Ursachen haben: a) Fehler bei der Übertragung, besonders über MS Windows b) Dateirechte manipuliert von Windows c) Cache im Dateiverzeichnis wurden auch übertragen d) Resten vom alten Domainnamen in der Datenbank c) diverse Einstellungen im Webserver insbes. bei Nginx insbes. das gefürchtete slasharguments Problem, usw. Drum die Empfehlung https://docs.moodle.org/27/en/Debugging auf Stufe "Entwickler" zu stellen und eine interne Fehlermeldung zu holen.
Als Antwort auf Visvanath Ratnaweera

Re: Migration und Update auf neuen Server - moodledata beschädigt

von Daniel S -

Hallo Visvanath,

danke für Deine Rückmeldung!!!

Ich weiß leider nicht, was der vorherige Server war (nur, dass noch keine MariaDBs drauf waren).

Ja, DB und moodledata gezippt per FTP auf meinen Windowsrechner, dann Neuinstallation 2.7 von den Moodle.org-Downloads, dann Upgrade-Prozess. DB auf MariaDB verändert (in der neuen DB die alte URL duch die neue per admin/tool/replace/index.php ersetzt), dann noch Upgrade auf 3.2.

Alle Kurse waren vom Aufbau her wieder da. Sämtliche Links in den Kursen selbst funktionieren (deshalb bemerkte ich die beschädigten Dateiformate nicht, als der alte Server noch online war). Alle Nutzer sind da.

PDFs, JPgs, PPts und DOCXs sind beschädigt. Bilder sind farblich verschwommen/zur Unkenntlichkeit verpixelt, alle anderen Dateien werden beim Anklicken vom zuständigen Programm als beschädigt gemeldet.

Ich habe über die DB selektiv einige PDF-Dateien in moodledata/filedir ermittelt, diese Dateien durch filegz auf meinem Rechner geschickt und habe abundzu Dateien wiederherstellen können - jedoch nicht alle; zumal auch in der DB die Datei mehrfach unter einem anderen Hash verlinkt war.

Mich wundert das, denn bei WinSCP ist zwar Standard als Transfermethode eingestellt gewesen (hatte ebi anderen Übertragungen außerhalb von Moodle nie Ärger gemacht), aber wenn man schaut, was bei WINSCP unter Standard  hinterlegt ist, finde ich binär. Somit hätte ich doch nicht explizit binär einstellen müssen, oder? Es gab ja nie Probleme.


Debuggig eingestellt
Als Antwort auf Daniel S

Re: Migration und Update auf neuen Server - moodledata beschädigt

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Hallo Daniel

Seien wir ehrlich. Die "intelligente" Dateiverwaltung von Moodle seit der Version 2 mag den DAU beglücken, ist habe im Weg der erfahrenen Computernutzer und blanke Horror des Systemadministrators.

Trotzdem, was du da hast, so was habe ich noch nie gesehen. Die Daten sind da, aber _inhaltlich_ beschädigt, obwohl moodledata als _eine_ Zip-Datei übertragen wurde? Nein, ich habe keine heisse Spur. Einzige Chance ist wenn du eine gescheite Debugmeldung provozieren kann.

Ich weiss, für dich kommt es zu spät. Aber ein Grundsatz in der Systemadminitration ist, nicht mehr als eine Sache auf ein Mal zu machen. Du hat eine Migration und mehrfache upgrades über mehrere "major" Versionen von Moodle, in einem Zug gemacht!

Frage: Kannst du wieder von vorne beginnen? Ich meine Moodle _migrieren_ bei gleichbleibenden Moodle (2.6.2) und testen? Erst wenn _alles_ OK, sichern und den nächsten Schritt auf 2.7. usw.? Ich weiss, Moodle fährt in einem horrenden Tempo. Aber du ich ich, wir haben keinen Einfluss darauf.