Contao-Camp 2024
Seite 2 von 2 ErsteErste 12
Ergebnis 41 bis 54 von 54

Thema: All Inkl und fiedsch/contao-4-backup-script

  1. #41
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Ja wäre nett.
    Ich habe versucht die bis jetzt bekannten Probleme zu beseitigen und einen neuen Branch erstellt:

    https://github.com/fiedsch/contao-4-...t/tree/allinkl

    @mlweb, @planepix: Wenn ihr es testen wollt, dann müsst ihr in eurer main.sh noch die Variable TAR=ptar setzen. Ansonsten hat sich dort nichts geändert.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  2. #42
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Beim Aufruf des Scriptes über den Browser und über den Cronjob werden jetzt wie es sich gehört alle drei Dateien geschrieben.
    Danke @fiedsch.
    Wie erwartet bekomme ich aber beim Aufruf über den Browser noch einen Fehler wegen des ebenfalls nicht innerhalb von exec ausführbaren /bin/uname

    Code:
    Returncode: 1
    Ausgabe des Scripts: 
    Array
    (
        [0] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
        [1] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
        [2] => /www/htdocs/xxx/meinPfad/c4-backup.sh: line 191: /bin/uname: Permission denied
        [3] => unknown operating system
    )
    Wenn ich die if-Funktion mit uname dort auskommentiere und von Linux als Operating-System ausgehe, laufe ich dann bei rm und ls in einen Fehler, weil die auch nicht erlaubt sind.
    Außerdem wird anders als über die Konsole die Löschung der files und Standard-Dateien vom gleichen Tag nicht angeboten.

    Code:
    Returncode: 126
    Ausgabe des Scripts: 
    Array
    (
        [0] => gzip: /www/htdocs/xxx/meinPfad/meinname_files_2018-12-12.tar.gz already exists;    not overwritten
        [1] => gzip: /www/htdocs/xxx/meinPfad/meinname_2018-12-12.tar.gz already exists;    not overwritten
        [2] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
        [3] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
        [4] => loesche altes Backup vom '2018-11-12'
        [5] => /www/htdocs/xxx/meinPfad/c4-backup.sh: line 205: /bin/rm: Permission denied
        [6] => /www/htdocsxxx/meinPfad/c4-backup.sh: line 206: /bin/ls: Permission denied )
    
    Ich denke aber auf das automatische Löschen könnte man vielleicht verzichten. Ich habe da auch etwas von einer automatischen Löschfunktion bei All-inkl. gesehen. Das werde ich mir aber erst demnächst genauer anschauen können.
    Noch etwas ist mir aufgefallen. Das "alte" Script konnte ich auch als PHP-Script in der Konsole aufrufen. Diese Version bleibt in der Konsole hängen, wenn ich den Aufruf des PHP-Scriptes starte. Direkter Aufruf von main.sh funktioniert natürlich.

    Nachtrag: Gerade gefunden wie man bei All-Inkl. die älteren Datei löschen könnte (unter Tools->Webspacebereinugung). Werde ich dann gleich mal einrichten.
    Geändert von mlweb (12.12.2018 um 23:08 Uhr)
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  3. #43
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Hallo Maren,

    Danke für's Feedback.

    Zitat Zitat von mlweb Beitrag anzeigen
    Wie erwartet bekomme ich aber beim Aufruf über den Browser noch einen Fehler wegen des ebenfalls nicht innerhalb von exec ausführbaren /bin/uname
    Hier könnte man den versuch der automatischen Erkennung noch so abändern, daß das Betriebssytem in der Konfiguration angegeben werden müsste.
    Dann wäre der uname-Aufruf schon mal weg. Das bringt im All-Incl Fall aber wahrscheinlich nicht so viel, da dann die nächsten Probleme auftreten (rm und ls).
    ls dient eigentlich nur dazu, daß eine Auflistung der vorhandenne Dateien erzeugt wird, was ich hilfreich finde, wenn man sich den Output des Cronjobs per E-Mail zuschicken lässt. Ansonsten kann das natürlich ersatzlos gestrichen werden. Bliebe rm: Wenn ich nicht falsch liege, sollt das durch setzen von PURGE_AFTER_DAYS=0 gelöst werden können. Dann sollte der Block nicht ausgeführt werden und Du kümmerst Dich selbst (auf anderem Weg um das Löschen der alten Backups).

    Außerdem wird anders als über die Konsole die Löschung der files und Standard-Dateien vom gleichen Tag nicht angeboten.
    Die Dateien vom selben Tag -- die eben erst angelegt wurden -- sollten doch nie gelöscht werden. Wo stehe ich hier auf dem Schlauch?

    Code:
        [0] => gzip: /www/htdocs/xxx/meinPfad/meinname_files_2018-12-12.tar.gz already exists;    not overwritten
    Das "not overwritten" ist das Ergebnis des jetzt separaten Aufrufs von gzip <datei> nachdem die <datei> von ptar erstellt wurde. Wenn Du das Skript mehrmals nacheinander am gleichen Tag aufrufst, passiert das. Im wirklichen Betrieb sollte das aber kein Thema sein. Oder wir hängen noch ein --force an den gzip-Aufruf an.


    Noch etwas ist mir aufgefallen. Das "alte" Script konnte ich auch als PHP-Script in der Konsole aufrufen. Diese Version bleibt in der Konsole hängen, wenn ich den Aufruf des PHP-Scriptes starte. Direkter Aufruf von main.sh funktioniert natürlich.
    Muss ich mal versuchen (unter MacOS) nachzustellen. Wäre zwar egal, denn "wenn Du schon auf der Konsole bist, dann rufe halt gleich das Skript auf", finde ich aber unschön und außerdem riecht es für mich nach "da könnte noch ein bisher nicht beachtetes Problem dahinter stecken".
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  4. #44
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von fiedsch Beitrag anzeigen
    ... finde ich aber unschön und außerdem riecht es für mich nach "da könnte noch ein bisher nicht beachtetes Problem dahinter stecken".
    Deshalb habe ich es Dir mitgeteilt.
    Auf die Idee das PHP-Script über die Konsole aufzurufen bin ich auch nur deshalb gekommen, weil ich irgendwann von All-Inkl dazu aufgefordert wurde und vermelden konnte, dass das PHP-Script gestartet auf Konsolenebene keine Probleme macht.

    Das Löschen bei All-Inkl habe ich gestern schon ausgetestet. Kann man also gut über die Oberfläche von All-Inkl. realisieren.


    Zitat Zitat von fiedsch Beitrag anzeigen
    Die Dateien vom selben Tag -- die eben erst angelegt wurden -- sollten doch nie gelöscht werden. Wo stehe ich hier auf dem Schlauch?
    Beim Aufruf über die Konsole kam ein Abfrage:

    Code:
    gzip: /www/htdocs/xxx/meinPfad/meineDatei_files_2018-12-13.tar.gz already exists; do you wish to overwrite (y or n)?
    Geht also nicht ums Löschen sondern ums Überschreiben. Da habe ich nicht richtig hingeschaut.
    Könnte die Abfrage das Hängenbleiben des PHP-Scriptes auf Konsolenebene verursachen?

    PURGE_AFTER_DAYS=0 habe ich eingesetzt. Dann läuft das Script über den Browser durch so wie es jetzt ist.

    Code:
    Returncode: 0
    Ausgabe des Scripts: 
    Array
    (
        [0] => gzip: /www/htdocs/xxx/meinPfad/meineDatei_files_2018-12-13.tar.gz already exists;    not overwritten
        [1] => gzip: /www/htdocs/xxx/meinPfad/meineDatei_2018-12-13.tar.gz already exists;    not overwritten
        [2] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
        [3] => mysqldump: [Warning] Using a password on the command line interface can be insecure.
    )
    Führe ich das Skript mehrfach am gleichen Tag aus, wird zusätzlich zu den Dateien meineDatei_Datum.tar.gz und meineDatei_files_Datum.tar.gz jeweils eine Datei meineDatei_Datum.tar bzw. meineDatei_files_Datum.tar erstellt und bei weiteren Wiederholungen überschrieben, während bei meineDatei_Datum.tar.gz und meineDatei_files_Datum.tar.gz die erste erstellte Datei erhalten bleibt. meineDatei_Datum.sql.gz wird bei jedem Durchlauf überschrieben.

    Aber im Normalfall würde ich den Cronjob nur einmal am Tag laufen lassen. Sehe ich also auch nicht als Problem.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  5. #45
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mal so eine Idee. Wäre es nicht möglich, wenn kein Betriebssystem erkannt wird, das PURGE_AFTER_DAYS automatisch in Deinem Script auf 0 zu setzen.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  6. #46
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Beim Aufruf über die Konsole kam ein Abfrage:

    Code:
    gzip: /www/htdocs/xxx/meinPfad/meineDatei_files_2018-12-13.tar.gz already exists; do you wish to overwrite (y or n)?
    Geht also nicht ums Löschen sondern ums Überschreiben. Da habe ich nicht richtig hingeschaut.
    Könnte die Abfrage das Hängenbleiben des PHP-Scriptes auf Konsolenebene verursachen?
    Ich denke, ja: die Nachfrage ist kommt von gzip und beim Aufruf über das PHP-Skript antwortet ja keiner.

    Führe ich das Skript mehrfach am gleichen Tag aus, [...]
    dann würde ich den angehängten "Zeitstempel" so definieren, daß er auch eine Angabe zur Uhrzeit enthält, womit der Dateiname dann jedes Mal ein anderer wäre und nichts überschrieben würde.

    Bsp.:

    Code:
    # Aktuell in c4-backup.sh eingestellt
    NOW=$(date +"%Y-%m-%d")
    
    # Beispiel mit Uhrzeit
    NOW=$("%Y-%m-%d_%H_%M_%S")
    Wie detailliert Du bei der Uhrzeit (Stunde %H, Minute %M, Sekunde %S) sein willst musst Du selbst entscheiden.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  7. #47
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Mal so eine Idee. Wäre es nicht möglich, wenn kein Betriebssystem erkannt wird, das PURGE_AFTER_DAYS automatisch in Deinem Script auf 0 zu setzen.
    Bei der aktuellen Implementierung würden wir uns damit aber im Kreis drehen:

    Wenn PURGE_AFTER_DAYS ungleich 0 ist, wird das Datum von vor PURGE_AFTER_DAYS Tagen zu ermitteln. Dabei muss je nach Betriebssystem unterschieden werden, da die date Aufrufe von Linux und BSD-Unixen wie MacOS andere Parameter haben (andere Betriebssysteme habe ich nicht im Einsatz und damit keine Ahnung, was es sonst noch geben könnte).

    Und genau hier kommt der uname Befehl in's Spiel, der bei All-Incl gesperrt ist.

    Code:
    if PURGE_AFTER_DAYS ungleich 0
       mittels uname Betriebssystem und damit date Aufrufsyntax bestimmen (=Problem bei All-Incl)
    endif
    Dein Vorschlag wäre ja: Betriebssystem bestimmen (=Crash) um dann PURGE_AFTER_DAYS auf 0 zu setzen um bei der dortigen Betriebssystembestimmung nicht zu crashen.

    Ausweg wäre, Das Betriebssystem oder gleich die Parameter für den date Aufruf als Konfigurationsoption anzugeben. Das könnte dann auch gleich Dein "mehrere Backups am Tag-Problem lösen". Bedeutet aber weitere Konfigurationsoptionen. Und hier wollte ich so wenige wie möglich verwenden. Meine Idee: was nicht angegeben werden muss kann auch nicht falsch angegeben werden.

    Ich probiere dazu noch ein paar Möglichkeiten aus und melde mich wieder.

    Bis dahin erst Mal Danke für's Feedback!
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  8. #48
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Ich habe eben im Branch 'allinkl'

    https://github.com/fiedsch/contao-4-...t/tree/allinkl

    die folgenden optional zu setzenden Variablen definiert:

    Code:
    # @mlweb: damit könntest Du Deine mehrmals täglichen Backups so konfigurieren, daß sie unterschiedliche Namen bekommen
    BACKUP_TIMESTAMP_FORMAT='%Y-%m-%d_%H_%M_%S'
    # Beim alte Backups löschen dann aber "alle des jeweiligen Tags" (muss logischerweise zu BACKUP_TIMESTAMP_FORMAT passen)
    PURGE_TIMESTAMP_FORMAT='%Y-%m-%d'
    # Wenn gesetzt, wird nicht versucht, dies mit Hilfe des bei All-Incl gesperrten uname zu ermitteln
    OSNAME='Linux'
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  9. #49
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Danke. Werde ich heute Abend mal austesten. Vorher komme ich wahrscheinlich nicht dazu.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  10. #50
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von fiedsch Beitrag anzeigen
    Das könnte dann auch gleich Dein "mehrere Backups am Tag-Problem lösen".
    Das Problem ist wirklich nur beim Testen aufgetreten. Denn für die Tests wollte ich ja nicht jedesmal einen Tag warten.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  11. #51
    Contao-Fan Avatar von Nightwing
    Registriert seit
    29.05.2013.
    Beiträge
    436

    Standard

    Hallo miteinander,

    ich grätsche hier mal rein, da ich ebenfalls bei all-inkl bin und eine Frage zu deren Backupscripten hätte
    Ich nutze die Scripte leicht abgewandelt, und hab mir dazu noch im Backend 2 Links eingefügt, siehe hier.
    Bis jetzt hab ich immer manuell per Klick meine Backups erstellt...
    Angenommen, ich nutze dies jetzt als Cronjob (= Tarif Private plus), das tut.
    Lasse ich jedoch automagisch alle Dateien älter als x löschen, werden doch meine beiden PHP Dateien im selbigen Verzeichnis mitgelöscht, oder irre ich mich da?
    Verzeichnis ist (in der Contao Installation): /web/_backup/
    Meine Hauptfrage wäre nun: wie biege ich den Ausgabepfad in den Scripten um, das die Ausgabe eine Ebene tiefer stattfindet?

    Hier die beiden Scripte, da copy bei mir nicht funktionieren wird.

    DB Backup:
    PHP-Code:
     <?php
        
    // PHP-Konfiguration optimieren
        
    @error_reporting(E_ALL E_WARNING);
        @
    ini_set("max_execution_time"300);
        @
    ini_set("memory_limit""512M");
        
        
    ######## einstellungen #############################################

        
    $db_name "0815xyz";
        
    $db_passwd "subber-geheimes-pw";

        
    $sql_file "sql_dump_" $db_name "_" date('Y-m-d_H-i-s') . ".sql";

        
    ####################################################################

        
    exec("mysqldump -u $db_name -p'$db_passwd' --allow-keywords --add-drop-table --complete-insert --quote-names $db_name > $sql_file");
        
    exec("gzip $sql_file");

        
    $datei $sql_file ".gz";
        
    $link 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
        
    $link str_replace(basename(__FILE__),$datei,$link);
        echo 
    "Backup fertig <a href='" $link "'>" $datei "</a";
    ?>
    FTP Backup:
    PHP-Code:
     <?php
        
    // PHP-Konfiguration optimieren
        
    @error_reporting(E_ALL E_WARNING);
        @
    ini_set("max_execution_time"300);
        @
    ini_set("memory_limit""512M");
        
        
    // Zu sicherndes Unterverzeichnis. Bleibt leer, wenn gesamter Account gesichert werden soll.
        
    $verzeichnis "/_hp/";
        
        
    // Auszuschließende Ressourcen
        
    $ignorieren = array("*.sql.gz""*.tar.gz""*.tgz""kas_backup""usage""logs");

        
    // PEAR-Klasse einbinden und Archiv erstellen
        
    $pfad preg_replace('/(\/www\/htdocs\/\w+\/).*/''$1'realpath(__FILE__));
        include 
    "Archive/Tar.php";
        
    $archivname "ftp_dump_".preg_replace('/.+\/(.+)\/$/''$1'$pfad).date('_Y-m-d_H-i-s').".tar.gz";
        
    $archiv = new Archive_Tar($archivnametrue);
        
    $archiv->setIgnoreList($ignorieren);
        
    $archiv->createModify($pfad.$verzeichnis""$pfad);
        
    $link 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
        
    $link str_replace(basename(__FILE__),$archivname,$link);
        echo 
    "Backup fertig <a href='" $link "'>" $archivname "</a>";
    ?>
    Danke für Ideen!

    ToM
    Geändert von Nightwing (28.08.2019 um 21:03 Uhr)

  12. #52
    Contao-Nutzer Avatar von Der Astronaut
    Registriert seit
    20.07.2012.
    Ort
    Weltall
    Beiträge
    241

    Standard

    Aloha,

    ich mache es so, dass ich die Backup-Datei mit
    PHP-Code:
    rename() 
    verschiebe.

    Gruß
    Sebastian

  13. #53
    Contao-Fan Avatar von Nightwing
    Registriert seit
    29.05.2013.
    Beiträge
    436

    Standard

    Danke, ich frage mich nur schon seit einer Weile, wo und wie ich das an obigen Scripten zum laufen bekomme?

    ToM

  14. #54
    Contao-Fan Avatar von Nightwing
    Registriert seit
    29.05.2013.
    Beiträge
    436

    Standard

    So, irgendwie hab ichs hingewurschdeld, macht das, was es soll: ein $targetdir = "data/"; an der richtigen Stelle kann Wunder bewirken

    DB
    PHP-Code:
     <?php
        
    // PHP-Konfiguration optimieren
        
    @error_reporting(E_ALL E_WARNING);
        @
    ini_set("max_execution_time"300);
        @
    ini_set("memory_limit""512M");
        
    #############################################################################################################################################
                                                                                                        ##########   EDIT HERE ONLY   ###########
        
    $db_name "0815xyz";                                                                            #########################################
        
    $db_passwd "subber-secret-pw";                                                                                                        #
                                                                                                                                                #
        // Verzeichnis, wohin gesichert werden soll. Pfad gilt ab Script.                                                                        #
        
    $targetdir "data/";                                                                                                                    #
        
    $sql_file $targetdir "sql_dump_" $db_name "_" date('Y-m-d_H-i-s') . ".sql";                                                    #
                                                                                                                                                #
    #############################################################################################################################################

        
    exec("mysqldump -u $db_name -p'$db_passwd' --allow-keywords --add-drop-table --complete-insert --quote-names $db_name > $sql_file");
        
    exec("gzip $sql_file");
        
    $datei $sql_file ".gz";
        
    $link 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
        
    $link str_replace(basename(__FILE__),$datei,$link);
        echo 
    "Backup fertig <a href='" $link "'>" $datei "</a";
    ?>
    FTP
    PHP-Code:
     <?php
        
    // PHP-Konfiguration optimieren
        
    @error_reporting(E_ALL E_WARNING);
        @
    ini_set("max_execution_time"300);
        @
    ini_set("memory_limit""512M");
        
    #############################################################################################################################################
                                                                                                        ##########   EDIT HERE ONLY   ###########
        // Zu sicherndes Unterverzeichnis. Bleibt leer, wenn gesamter Account gesichert werden soll.    #########################################
        
    $verzeichnis "/_hp/";                                                                                                                #
        // Verzeichnis, wohin gesichert werden soll. Pfad gilt ab Script.                                                                        #
        
    $targetdir "data/";                                                                                                                    #
                                                                                                                                                #
        // Auszuschließende Ressourcen                                                                                                            #
        
    $ignorieren = array("*.sql.gz""*.tar.gz""*.tgz""kas_backup""usage""logs""var");                                                #
                                                                                                                                                #
    #############################################################################################################################################

        // PEAR-Klasse einbinden und Archiv erstellen
        
    $pfad preg_replace('/(\/www\/htdocs\/\w+\/).*/''$1'realpath(__FILE__));
        include 
    "Archive/Tar.php";
        
    $targetdir "data/";
        
    $archivname $targetdir "ftp_dump_".preg_replace('/.+\/(.+)\/$/''$1'$pfad).date('_Y-m-d_H-i-s').".tar.gz";
        
    $archiv = new Archive_Tar($archivnametrue);
        
    $archiv->setIgnoreList($ignorieren);
        
    $archiv->createModify($pfad.$verzeichnis""$pfad);
        
    $link 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
        
    $link str_replace(basename(__FILE__),$archivname,$link);
        echo 
    "Backup fertig <a href='" $link "'>" $archivname "</a>";
    ?>
    ToM

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •