[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

tar, wildcards und -C



Hallo,

ich habe ein Problem mit tar, der Option -C (change working directory)
und der Verwendung von Wildcards für Dateinamen und kann leider anhand
der Doku nicht verifizieren, ob es überhaupt geht, und wenn ja, wo der
Fehler liegt.
Ich hab's mit dieser Doku probiert:
  http://www.gnu.org/software/tar/manual/html_chapter/tar.html

Im Verzeichnis "/home/backup-remote/logs/" liegen die 3 Dateien
maillog.log messages.log secure.log .

Folgender Befehl funktioniert bestens (in einer Shell getestest und im
"prerotate"-Teil von logrotate (siehe weiter unten)):
  /bin/tar czPf /home/backup-remote/logs/log.tar.gz -C /home/backup-remote/logs/ maillog.log messages.log secure.log

Auch der nächste Befehl funktioniert, wenn man vorher mit
"cd /home/backup-remote/logs/" in das entsprechende Verzeichnis
springt (getestet in der Shell):
  /bin/tar czPf /home/backup-remote/logs/log.tar.gz *.log

Was nicht geht (und ich nicht ganz verstehe) ist (Shell und natürlich
schon gar nicht im logrotate):
  /bin/tar czPf /home/backup-remote/logs/log.tar.gz -C /home/backup-remote/logs/ *.log
  /bin/tar czPf /home/backup-remote/logs/log.tar.gz -C /home/backup-remote/logs/ '*.log'

weitere Hintergrundinfos:
  - ich verwende den Befehl in einem "prerotate"-Teil im
    logrotate-Konfigurationsdatei.
  - ich möchte nicht den absoluten Pfad mit im Päkchen haben
  - ich möchte den Befehl nicht unbedingt anpassen müssen, wenn andere
    *.log dazukommen.

Falls es mit den wildcards im tar-Befehl nicht geht, bleiben immer
noch die Workarounds mit "cd" oder dem Weglassen von "*", schöner
wär's halt im tar-Befehl :)

Christian


Reply to: