[PHP] system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

Dieses Thema im Forum "Webentwicklung" wurde erstellt von onip, 23. Januar 2008 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 23. Januar 2008
    system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    hi,

    ich zippe ein odner wie folgt:

    system ( 'tar -czf backup.tar.gz dir/');

    wie kann ich nun diesen zip samt inhalt wieder entpacken?
     
  2. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    is kein zip. ist tar.gz
    Gib mal "man tar" ein. Dann kriegst du deine Hilfe.
    (Man = Manual)
     
  3. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    mit zip wollte ich packen ausdrücken.
    es handelt sich natürlich um ein tar.gz format.

    folgendes wurde mir ausgegeben

    ich versteh nur bahnhof

    ich sollte mal erwähnen was ich vorhabe.
    ich möchte ein kleines backup-tool per php machen.
    man such sich ein ordner aus und packt diesen.
    aus einer liste von backups kann nun entpackt werden.

    das packen mach ich so:
    system ( 'tar -czf backup.tar.gz dir/');

    wie entpacke ich nun?
     
  4. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    Ich glaube mit: system ( 'tar xfv backup.tar.gz dir/');

    Ich bin mir allerdings nicht ganz sicher!

    mFg Chrisomator
     
  5. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    so "tar xvfz backup.tar.gz -C /home"
     
  6. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    so es funktioniert, hab aber dabei ein problem entdeckt.

    packen:
    system ( "tar -czf backup.tar.gz dir/);

    entpacken:
    system ( "tar -xzf backup.tar.gz);

    mein problem ist der pfad.
    ich packe nicht "dir/" sondern "../dir/".
    also die ordner darüber.
    gepackte datein sehen dann so aus

    ../dir
    ../dir/f1.txt
    ../dir/f2.txt
    usw.

    durch das "../" wird nicht entpackt.

    meine struktur:
    backup/backuptool.php
    dir1/
    dir2/
    usw.

    ich möchte also von backup/ aus die ordner dir1/ dir2/ usw. packen.
    ist etwas blöd zu erklären, ich hoffe ihr versteht was ich meine.

    gibt es dafür eine lösung?
     
  7. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    Jip,genau so, wobei das -C aber optional ist.
     
  8. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    nimm nen absoluten pfad

    $_SERVER['HTTP_ROOT'] und $_SERVER['PHP_SELF'] sollten helfen.
     
  9. 23. Januar 2008
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    das script reagiert.
    es wird mir der inhalt aufgelistet, aber nicht entpckt

    packen:
    system ("tar -czf backup.tar.gz ../dir/");

    entpacken:
    system ("tar xvfz backup.tar.gz -C ../");

    ----------------

    absolute pfadangabe will auch nicht.

    hab's nochmal wie folgt probiert.

    dir1/
    dir2/
    backup.php

    packen von dir1/ mit backup.php
    system ("tar -czf backup.tar.gz ./dir1/");

    struktur danach:
    dir1/
    dir2/
    backup.php
    backup.tar.gz

    entpacken mit backup.php:
    system ("tar xvfz backup.tar.gz");

    "dir1/" hab ich zuvor umbenannt, dann sieht die struktur so aus:
    dir1_/
    dir1/
    dir2/
    backup.php
    backup.tar.gz

    es wurde erfolgreich entpackt.

    ich würde jedoch von einen backupordner aus packen-entpacken.
    siehr struktur weiter oben.

    ----------------

    so werden die dateien benannt:

    $backupname = "backup_".date ("Y-m-d_H-i-s").".tar.gz";

    z.B.
    backup_2008-01-23_20-41-48.tar.gz

    und das ist im archiv
    Bild

    was meiner meinung nach probleme verursacht ist das "..\" vor dem ordner.
    hab es wie gesagt ohne einen backupordner probiert und das funktioniert einwandfrei.

    ich bin leider gleich weg.
    bin jedoch morgen wieder am platz.
    das thema ist für mich noch nicht abgeschlossen.
    für zahlreiche anregungen und tipps bin ich dankbar.
    alle die sich schon mit eingeschalten haben, bin ich sehr dankbar.

    also bis morgen

    viele grüße
     
  10. 23. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    ein absoluter pfad begint mit einem / (root)

    ./ oder ../ oder einfach nur dir/ sind alles relative pfade.
     
  11. 24. Januar 2008
    AW: system ( 'tar -czf backup.tar.gz dir/'); nun entpacken

    so nach langre rechere und probieren bin ich auf eine lösung gekommen.

    ich packe den ordner mit absoluter pfadangabe:
    system ("tar -czf backup.tar.gz ".$_SERVER['DOCUMENT_ROOT']."/dir");

    beim packen wird der absolute pfad in ordner angelegt.

    ich entpacke im aktuellen pfad:
    system ("tar xvfz backup.tar.gz");

    ich verschiebe nun den ordner "/dir" dahin wo ich ihn haben will.
    ich lösche die ordnerstruktur vom packen ($_SERVER['DOCUMENT_ROOT']).

    das ist zwar umständlich, aber es funktioniert.

    danke an allen die mir zahlreiche tipps gegeben haben.

    // thread ist geschlossen
     
  12. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.