tar met exclude werkt niet

Pagina: 1
Acties:

  • smaij
  • Registratie: November 2000
  • Laatst online: 19:03
Ik ben bezig met een backupscript voor mijn websites.
Daarin doe ik een backup van de /home/sites/www.home1.nl directories..
Dit doe ik in een while loopje.

Ik wil 2 directories graag niet meenemen. De 1 hoeft niet persee te bestaan, de ander bestaat wel en is gecreerd door webalizer.

Eerst had ik dit:
code:
1
tar -czf $DIR2BACKUP/$SITE_BACKUP[$x].tar.gz $SITE_DIRNAME[$x]/web

Daar had ik dit met --exclude van gemaakt:
code:
1
tar -czf $DIR2BACKUP/$SITE_BACKUP[$x].tar.gz $SITE_DIRNAME[$x]/web --exclude $SITE_DIRNAME[$x]/stats --exclude $SITE_DIRNAME[$x]/backups

Dit werkte niet en ik heb dus ook het volgende maar geprobeerd, maar geen resultaat:
code:
1
tar -czf $DIR2BACKUP/$SITE_BACKUP[$x].tar.gz $SITE_DIRNAME[$x]/web/* --exclude $SITE_DIRNAME[$x]/stats/* --exclude $SITE_DIRNAME[$x]/backups/*


$SITE_DIRNAME[$x] bevat bijvoorbeeld: /home/sites/www.sitenumerouno.nl
Dit komt uit mijn php script waarin ik de functie passthru gebruik.

  • Fatal-Error
  • Registratie: Juli 2001
  • Niet online
Je kunt het beste van te voren en bestand genereren waarin alle files staan die je niet wilt backuppen. Dit bestand geef je dan aan tar mee met de --exclude-from optie.

Welcome to the desert of the real.


  • smaij
  • Registratie: November 2000
  • Laatst online: 19:03
Ja of -X doet dat ook. Maar ik kan NIET elk bestand daarin opsommen, want die directories worden gevuld met zoveel verschillende bestanden..
Het gaat just om deze 2 directories. Waarom werkt bovenstaande niet.. Als ik zoek op GoT staat het geloof ik met zon dergelijke syntax.

  • Fatal-Error
  • Registratie: Juli 2001
  • Niet online
Je kan met tar ook bepaalde patterns excluden, maar dan loop je dus het risico dat je teveel exclude. Een directory excluden door alleen het pad op te geven is mijn nog niet gelukt, maar het kan best zijn dat ik een wat verouderde tar heb.
En dat bestand met alle files moet je natuurlijk on-the-fly genereren mbv ls, dat is toch geen probleem?

Welcome to the desert of the real.


  • smaij
  • Registratie: November 2000
  • Laatst online: 19:03
dus zoiets kan ook? (snel man ls en info ls gedaan :) )

tar -czf /home/sites/www.test1.nl/backup.tar.gz /home/sites/www.test1.nl/web --exclude ls -d /home/sites/www.test1.nl/web/stats

dan komt er toch niet voor ieder bestand --exclude te staan :?

ik krijg ook deze error:

tar: You may not specify more than one `-Acdtrux' option

[ Voor 0% gewijzigd door smaij op 03-11-2002 22:39 . Reden: foutje ]


  • Fatal-Error
  • Registratie: Juli 2001
  • Niet online
Hm, ik dacht meer aan "ls /te/excluden/dir > bestand1" en "tar -czf backup.tar.gz /te/backuppen/dir --exclude-from bestand1"...

Welcome to the desert of the real.


  • smaij
  • Registratie: November 2000
  • Laatst online: 19:03
Klopt het werkt thx :)

Verwijderd

misschien ipv ls een ls -a /te/excluden/dir > ...

  • Fatal-Error
  • Registratie: Juli 2001
  • Niet online
Het lijkt erop dat er vrij veel verschil zit tussen verschillende versies van tar. Ik gebruik versie 1.13 van de gnu site, waarbij bv. `--exclude dir1/dir2` niet werkt zoals je zou verwachten, maar op een computer met redhat 7 werkt het wel goed. De versie van tar is daarop 1.13.17. Volgens de documentatie van tar zou het wel gewoon moeten werken :?. Ik neem aan dat redhat tar zelf heeft gepatched, zodat het wel werkt.
Nog een opmerking over de 1ste post, wanneer je gebruik maakt van wildcards moet je quotes gebruiken, omdat bash anders de wildcards gaat expanden, en dat wil je niet.

Welcome to the desert of the real.

Pagina: 1