tar legt sich schlafen, und wacht nie mehr auf

D

dj_mueller

Hallo Leute,

ich bin jetzt wirklich am verzweifeln. Folgendes mir völlig schleierhaftes Verhalten:

Ich rufe in einem Bash-Skript einen tar auf. Das hat bisher immer funktioniert. An dem Skript wurde nichts geändert. Auf einmal konnte ich reproduzierbar folgendes Verhalten sehen:

- tar läuft an
- tar legt sich schlafen (also der Prozess hat ein S)
- auch nach stunden rührt sich nichts

Wenn ich den gleichen Befehl direkt auf der Konsole ausführe funktioniert alles wunderbar.

Hier der Befehl im Skript:

if { tar -cvf ${BACKUP_DIR}/vollbackup_${w_tag}.tar --exclude=temp * ; }

Also überhaupt nichts aufregendes.

Wenn der Prozess sich schlafen legt, sehe ich unter /proc/PID/fd das der Prozess noch einen File Descriptor auf eine Datei offen hatte.

Habe dann einmal diese Datei rausgenommen (mit --exclude) und wieder gestartet. Hat nichts geholfen. Prozess legte sich wieder schlafen. Diesmal war ein anderer File Descriptor offen.

Bin für jeden Hinsweis dankbar.

Folgender Workaround (Fix???) funktioniert:

Wenn ich die Zeile ändere:

if { tar -cvf ${BACKUP_DIR}/vollbackup_${w_tag}.tar --exclude=temp * > /dev/null ; }

Also Eingabestrom auf /dev/null/ umleite dann funktioniert es auch wieder.

Verstehen tue ich das aber nicht.

Gruss
Daniel
 
ist wohl eher die Standardausgabe, die du umleitest. Hast du mal probiert den Kram in eine richtige Datei umzuleiten, und dann mit tail -f drauf was der tar da reinschreibt?
Tschöö,
yai
 

Ähnliche Themen

tar network backup problem

Kein X-server mehr, Yast hängt sich bei Grafikkarte+Monitor auf

Server-Monitoring mit RRDTool

faxen geht nicht mehr

WineX 3.0 unter Suse8.1

Zurück
Oben