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

Datei wird nicht von tar gesichert



Hi Liste,

in meinem Homeverzeichnis liegt unter anderem auch eine Datei wie diese hier:
 ls -lh /home/meinbenutzeraccount/*.txt
-rw-r--r-- 1 meinbenutzeraccount meinbenutzeraccount 288 May 8 15:04 /home/meinbenutzeraccount/C:\nppdf32Log\debuglog.txt

Dieser Mist kommt laut Google-Suche (http://forums.mozillazine.org/viewtopic.php?p=11925323&sid=c2869da8c19da52032f04f07ac623dea#p11925323) von einem Fehler in Version 9.5.1 des Adobe-Reader-Plugins.

Jeglicher Versuch, mein homedir mittels tar zu sichern, scheitert seitdem, da das Skript, was ich dafür verwende, abbricht und eine Alarm-E-Mail schickt, wenn tar an dieser Stelle Fehler wirft.

Alte Version:
[...]
find ./home ! -type s > filelist
tar --no-recursion -T filelist -cf - | pbzip2 > /mnt/backup/$DATUM.tar.bz2
[...]

Die Fehlermeldung lautet:
tar: ./home/meinbenutzeraccount/C\:\nppdf32Log\\debuglog.txt: Cannot stat: No such file or directory

Wie man sieht, ist das Escapen der Escape-Zeichen irgendwie kaputt (Und um Rekursion zu verstehen, muss man... jaja).

Nun dachte ich, ich könnte dem so begegnen:

[...]
find ./home ! -type s -print0 > filelist
tar --no-recursion --null -T filelist -cf - | pbzip2 >/mnt/backup/$DATUM.tar.bz2
[...]

Aber leider ändert das rein gar nichts an der Fehlermeldung (auch wenn es ansonsten sicher sauberer ist): tar: ./home/meinbenutzeraccount/C\:\nppdf32Log\\debuglog.txt: Cannot stat: No such file or directory

Nun fand ich in der manpage von tar (aber nur in der englischsprachigen, zu erreichen mit man -LC 1 tar):
--no-unquote
           do not unquote filenames read with -T

das habe ich dann so ausprobiert

[...]
find ./home ! -type s -print0 > filelist
tar --no-recursion --null -T filelist --no-unquote -cf - | pbzip2 >/mnt/backup/$DATUM.tar.bz2
[...]

und damit läuft das Teil wieder fehlerfrei durch. Aber mir ist nicht so ganz klar, was ich mit "--no-unquote" genau anstelle und was das für Seiteneffekte hat. "do not unquote filenames read with -T" ist eine Erklärung, mit der ich an der Stelle allein nicht wirklich viel anfange.

Was genau geht da überhaupt schief?

tar meint ja, der Dateiname sei
./home/meinbenutzeraccount/C\:\nppdf32Log\\debuglog.txt
dabei ist er
./home/meinbenutzeraccount/C:\nppdf32Log\debuglog.txt
und richtig escapet wäre er
./home/meinbenutzeraccount/C:\\nppdf32Log\\debuglog.txt

Wieso "verrutscht" der Backslash beim C:?

Wer kann mir Erleuchtung verschaffen?

Gruß
Stefan


Reply to: