Viele Fehler beim Backup-Versuch aus Admin-Tab_ PHP Warning: readdir() expects

  • 9 Antworten
  • 293 Aufrufe
*

Offline Tesla

  • Mitglied
  • 23
Guten Tag.
Ich habe unangenehme Probleme beim Backup-Versuch. Derzeitige Konfiguration:
Lokalinstallation, LAMP-Server ⇔ Linux, PHP=7.3.7.  In 2 Browsern habe probiert, sogar habe Browser als root geöffnet, kein Erfolg.
1. Ich logge als Admin in Browser-Tab, öffne Admin-Tab und versuche mit allen Häkchen (mit 1 Häkchen ist alles dieselbe) Backup als Zip-Datei herunterladen.
2. In Browser sehe aus erster Sicht statische 1 Seiten lang Error, wo dieselbe Linien sind, Error heißt:

 [22-Feb-2020 03:03:16 Europe/Berlin] PHP Warning:  readdir() expects parameter 1 to be resource, bool given in /opt/lampp/htdocs/mozilo2.0-master/admin/admin.php on line 436

Hier ist mein Admin.php linien neben 436:

if($make_zip) {
        if(!is_dir(BASE_DIR.BACKUP_DIR_NAME)) {
            @mkdir(BASE_DIR.BACKUP_DIR_NAME);
            setChmod(BASE_DIR.BACKUP_DIR_NAME);
        }
        $filename = 'moziloCMS_Backup_'.$incl.$tmp_date.'.zip';
        $file = BASE_DIR.BACKUP_DIR_NAME.'/'.$filename;
        define("PCLZIP_TEMPORARY_DIR",BASE_DIR.BACKUP_DIR_NAME.'/');
        require_once(BASE_DIR_ADMIN."pclzip.lib.php");
        $backup = new PclZip($file);
        if(0 != ($backup->create($dirs,
#                PCLZIP_OPT_ADD_TEMP_FILE_ON,
                PCLZIP_OPT_REMOVE_PATH, BASE_DIR,
                PCLZIP_OPT_ADD_PATH, 'moziloCMS_Backup_'.$tmp_date))) {
            $send = true;
        } else {
            global $message;
            $message .= returnMessage(false,"Error : ".$backup->errorInfo());
            $dh = opendir(BASE_DIR.BACKUP_DIR_NAME);
(Line436)→    while(($entry = readdir($dh)) !== false) {
                if($entry == "." or $entry == "..")
                    continue;
                @unlink(BASE_DIR.BACKUP_DIR_NAME.'/'.$entry);
            }
            closedir($dh);
        }
    }


 Nach einigen Minuten sah ich plötzlich, dass in ...lampp/logs/  eine Text-Datei mit Name "php_error_log" enorm groß wurde (>529 MB), dort waren >99% Linien dieselbe Error-Linien, mehr als 3'150'000 Linien, viele Textredaktoren scheiterten diese zu löschen.
Und die ärgerlichste: plötzlich sah ich, dass in System kaum freie Platz habe, /temp Ordner wurde >18.3 GB und strebt mehr zu wachsen  :o Dort fand ich keine einzelne große Dateien, die meiner Meinung nach die Ursache sein konnten, später leerte das mit Terminal :!: und mit etwas Risiko. Und System strebte zu hängen und mehr als 6.5 Gb RAM-Speicher zu nutzen (+SWAP).

Wer wird dieselbe Situation haben, rate ich:
1. schnell wie möglich in Browser <= zurück gehen oder Tab schnell schließen und Server stoppen, so hat man Chance statt Millionen nur <150000 Error-linien zu bekommen und /temp nicht ausfüllen. 
2. php_error_log  file öffnen, alle Errors, die vor diesem Error passierten mit 1 Linie dieses Errors in andere Text-Datei (erstellen) zu kopieren, original php_error_log Datei löschen, dann neues Textdatei umbenennen "php_error_log", so wird es schneller, als Millionen Linien zu löschen. Alle Operationen mit offline Server.
3. Und schlanke php_error_log Datei in andere Platz kopieren, um später beim wiederholen erwachsene Log file zu ersetzen.
4. /temp zu prüfen und alle Anwendungen ausschließen und mit Terminal temp leeren.
____________________________
Endlich meine Fragen:
1. Was habe ich falsch gemacht, warum passiert dieses Error?
2. Wie kann ich dieses Problem beheben oder als Zip-Backup machen und herunterladen.
3. Ist mit root Rechten einfaches copy-paste Mozilo-Folders in LAMP gleichwertig an zip-download?
4. Dateirechten im Admin-Tab sind 644. Kann das die Ursache sein? Muss ich temporär 777 geben, und dann zurückändern? Download als zip versteht LAMP als "execute" und die Rechte "read+write" reichen nicht?

(vor vielen Monaten hatte ich nicht solche Probleme und zip-download funktionierte gut)
im  voraus vielen Dank.
« Letzte Änderung: 22. Februar 2020, 06:53:19 von Tesla »
-Tesla+

*

Offline marusti

  • Administrator
  • Mitglied
  • 428
Hallo,
geht es um moziloWiki (in dem Forum ist der Beitrag) oder moziloCMS? Falls moziloCMS: habe es bei mir lokal unter Linux mit 7.3 und 7.4 versucht und das Backup hat problemlos funktioniert (Rev 51)

*

Offline Tesla

  • Mitglied
  • 23
Hallo, es geht um Mozilo CMS, ich habe leider in falscher Kategorie gepostet: es gibt hier 2 Unterkategorien "Hier klemmt es", das ist verwirrend. Ich habe wieder versucht, bekomme wieder viele Fehler. /temp wächst nicht mehr, weil ich schnell Tab schließe, php_error_log in Lamp/log strebt aber schnell sich zu vergrößern (tausende und Millionen Fehler). In Error-log (LAMP/Log) fand ich folgende:

[Sat Mar 07 06:20:15.535336 2020] [ssl:warn] [pid 21513] AH01906: www.example.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sat Mar 07 06:20:15.535389 2020] [ssl:warn] [pid 21513] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Sat Mar 07 06:20:15.535459 2020] [suexec:notice] [pid 21513] AH01232: suEXEC mechanism enabled (wrapper: /opt/lampp/bin/suexec)
[Sat Mar 07 06:20:15.593134 2020] [ssl:warn] [pid 21514] AH01906: www.example.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sat Mar 07 06:20:15.593176 2020] [ssl:warn] [pid 21514] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Sat Mar 07 06:20:15.593252 2020] [lbmethod_heartbeat:notice] [pid 21514] AH02282: No slotmem from mod_heartmonitor
[Sat Mar 07 06:20:15.603318 2020] [mpm_prefork:notice] [pid 21514] AH00163: Apache/2.4.39 (Unix) OpenSSL/1.0.2s PHP/7.3.7 mod_perl/2.0.8-dev Perl/v5.16.3 configured -- resuming normal operations
[Sat Mar 07 06:20:15.603362 2020] [core:notice] [pid 21514] AH00094: Command line: '/opt/lampp/bin/httpd -E /opt/lampp/logs/error_log -D SSL -D PHP'


und  in  Lamp/log/php_error_log fand ich folgende:

07-Mar-2020 03:11:49 Europe/Berlin] PHP Warning:  readdir() expects parameter 1 to be resource, bool given in /opt/lampp/htdocs/Seitenname/admin/admin.php on line 436
[07-Mar-2020 02:20:15 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so: cannot open shared object file: No such file or directory), /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
[07-Mar-2020 02:20:15 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden), /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden)) in Unknown on line 0


Danke für die Antwort und Ihr Versuch. Welche Lokalserver haben Sie genutzt und mit welchen Dateirechten in Admin-Tab? Funktionierte Backup mit Rechten 644? Muss ich temporär 777 setzen? Ist es erlaubt in  htdocs statt Mozilo CMS eigenen Seitenname zu schreiben? Kann dass ein Faktor sein?  Ich verstehe noch nicht, wo liegt die Fehler-Ursache: in CMS, in LAMP oder in Dateirechten/Dateinamen.
« Letzte Änderung: 07. März 2020, 04:38:51 von Tesla »
-Tesla+

*

Offline Tesla

  • Mitglied
  • 23
Nach vielen Stunden Nachtarbeit konnte ich endlich Mozilo-Backup aus der Admin-Tab machen! Ich nahm Error-Logs unter die Lupe.
1. Zuerst machte ich in Linux-Betriebssystem manuell einige Updates und ein paar Installationen (oracle-instantclient19.6-basic-19.6.0.0.0-1.x86_64 für oci8.so-error aus dem Log), die meiner Meinung nach könnten vielleicht hilfreich sein (PHP, LAMP und vieles mit ähnlichen Namen und Bedeutungen).
2. Dann versuchte einige Terminal-Befehle aus einigen Foren (phpize, ZEND Modul, usw ) , die nur teilweise gut liefen.
Diese Schritte, die ich machte, nicht alles verstand und jetzt nicht alles mich erinnere, konnten Probleme mit vielen Fehler-Eintragen im Verzeichnis  ...Lamp/log   in  Datei  php-error-log beheben. Früher bekam ich >50000 Fehler innerhalb 2-3 Sekunden und >3-4'000'000 Fehler nach 10-15 Sekunden, nach diesen Schritten bekam ich dort keine Fehler mehr.

Dann bekam ich Warnung während Backup-Versuch in Admin-Tab  "die Verzeichnis  ...Mozilo(Seitenname)/backup nicht gefunden"
3. Ich erstellte manuell ein Verzeichnis innerhalb Mozilo CMS Verzeichnis.    Muss dort ein solches backup-Verzeichnis sein? Ich hatte nicht und jetzt habe! Muss ich das vor dem Hosting in Server entfernen?
    Das behob oben genannte Fehler, gab aber Warnung, das Backup-Zip Datei kann nicht geöffnet werden und dort in .../Seitenname(Mozilo CMS)/backup war keine Datei. Ich versuchte Backup mit default 644 Rechten in Admin Tab. Aus Admin Tab Temporär 777 setzen war nicht hilfreich.

4. Ich versuchte wieder mit 644 Rechten, gab aber manuell in Mozilo-Verzeichnis dem Ordner backup 777 Rechte und bekam kein Fehler mehr. Backup funktioniert! 

Folgendes kann ich jedoch nicht verstehen: wenn ich in Admin-Tab auf "Dateirechte für alles setzen" klicke, bekomme solche Warnung : "Die Dateirechten können nicht geändert werden" . Warum? Ist das beim Lokalinstallation normal?

Das war meine Erfahrung mit diesen Fehlern, vielleicht kann dieses beim ähnlichen Fehlern jemandem helfen.
-Tesla+

*

Offline marusti

  • Administrator
  • Mitglied
  • 428
Welche mozilo Version und welche Rev hast du installiert?
Es muss normal kein Verzeichnis "backup" angelegt werden (wird es auch standardmäßig nicht) da die zip Datei auf den Rechner heruntergeladen wird siehe auch hier https://mozilo.de/moziloCMS%202.0/Anleitung/Admin.html unter Datensicherung / Backup-Generator

*

Offline Tesla

  • Mitglied
  • 23
Ich habe Mozilo 2.0 ("Amalia") Revision 51 installiert. Nach der Installation hatte ich kein Verzeichnis backup. Während Backup-Versuch aus Admin-Tab bekam ich aber Meldung und Fehler, die sagten, dass es kein backup Ordner "backup" existiert und error in line 0. Nach der Erstellung backup Ordner innerhalb Mozilo Verzeichnis und nach der Erweiterung die Dateirechte mit nicht Mozilo-Mitteln Backup funktionierte. Ich hoffe Zeit zu finden und andere Variationen zu probieren, z.B. diesen Backup Ordner ohne Dateirechte-Begrenzung zu entfernen und mal wieder schauen was passieren wird. Und ich bekam Backup nicht in backup Ordner in Mozilo Verzeichnis, sondern Browser schlug mir vor, selbst download-Ort zu wählen. Ich las diesen Link über Backup und andere Funktionen früher und las wieder diesmal: ich hatte Mozilo-Installationen, wo alles funktionierte wie dort geschrieben ist, aber nicht diesmal. Während einfaches Backup-Versuch mit Hilfe Admin-Tab, bekam ich seltsames Verhalten, zuerst Fehler, jetzt funktioniert mit Backup Ordner in Mozilo, später werde versuchen normales Verhalten ohne Backup-Verzeichnis zu bekommen.
-Tesla+

*

Offline marusti

  • Administrator
  • Mitglied
  • 428
Zitat
...sondern Browser schlug mir vor, selbst download-Ort zu wählen.
Das ist die Standardfunktionalität für das Backup, siehe auch Auszug aus dem Link
Zitat
Mit dem mozilo-Backup-Generator wird auf Knopfdruck ein komplettes, oder teilweises Backup der Website erzeugt, das dann als zip-Datei auf den eigenen Rechner heruntergeladen wird.
mozilo erstellt keinen Ordner bzw. hat keinen festen Speicherort für Backups.

Kann es sein das du irgendwo (zb in deinem Browser) "Backup" als einen Standardort für Download festgelegt hast? Und da es diesen nicht gibt, kann die zip Datei dort auch nicht gespeichert werden.

*

Offline stefan-wasp

  • Mitglied
  • 24
Zitat
mozilo erstellt keinen Ordner bzw. hat keinen festen Speicherort für Backups.
Das stimmt so nicht. Der Ordner "backup" wird im Zuge einer CMS-seitigen Datensicherung im cms-root für die Erstellung des ZIP-File beim Erstaufruf des Backups angelegt bzw. dann temporär verwendet. Das ZIP-File wird dann wieder gelöscht (unlink) ,,,
Ich verwende das Ganze ausschließlich -online- also nicht local - ohne Probleme. 
Use: UTF-8 w/o BOM

*

Offline Tesla

  • Mitglied
  • 23
Mein Browser ist so eingestellt, dass er jedes mal mir fragt, wo zu speichern. Früher machte ich ohne Probleme Backups, wählte Ordner in Disk und speicherte. Heute habe ich versucht, "backup" Ordner in Mozilo (mit Rechten 777) zu entfernen und erneut Backup zu machen, bekam aber in 2-3 Sekunden tausende Fehler (füge Screenshot) . Dann erstellte ich erneut manuell in Mozilo CMS Verzeichnis ein Ordner mit Name "backup" und mit Rechten 777, und Backup funktionierte ohne tausende Fehler. Ohne backup folder habe ich auch solche Fehler und Backup funktionierte nicht:

PHP Warning:  opendir(/opt/lampp/htdocs/Seitenname/backup): failed to open dir: Datei oder Verzeichnis nicht gefunden in /opt/lampp/htdocs/Seitenname/admin/admin.php on line 435
[14-Mar-2020 01:54:41 Europe/Berlin] PHP Warning:  readdir() expects parameter 1 to be resource, bool given in /opt/lampp/htdocs/Seitenname/admin/admin.php on line 436,


und mit backup Ordner habe ich solche Fehler:

PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so: cannot open shared object file: No such file or directory), /opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so (/opt/lampp/lib/php/extensions/no-debug-non-zts-20180731/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

aber mit diesem Fehler Backup funktioniert. Ich habe  diesen Path geöffnet, dort habe ich kein oci8.so File und weiß noch nicht , wie diese Fehler zu beheben. Das stört mir aber praktisch nicht, nur ästhetisch. Backup Ordner hatte ich nach dem Installation nicht. Jetzt speichert die ZIP Datei in Ordner, den ich in Browsers File Manager öffne und nicht in backup Ordner in Mozilo: das finde ich gut, verstehe aber die Bedeutung dieses immer leeres Ordners nicht.
-Tesla+

*

Offline Tesla

  • Mitglied
  • 23
Stefan, das heißt, ein leerer Ordner in Mozilo CMS Verzeichnis nach erstem Backup -Versuch ist normales Verhalten, und ich brauche nichts zu ändern?   Praktisch, mit backup Ordner funktioniert Backup. Bei mir konnte vielleicht CMS  während erstes Backup-Versuchs diesen Ordner selbstständig  nicht erstellen (wegen 644 Dateirechten?).  Ich kann noch nicht verstehen, welche Bedeutung  oci8.so File für Backup hat (die in Error log angezeigt ist und dort in angezeigtem path fehlt).
 
-Tesla+