Crontab: Eigenartiges Problem

Seite 1 von 1 - Forum: Linux and other OS auf overclockers.at

URL: https://www.overclockers.at/linux/crontab_eigenartiges_problem_157065/page_1 - zur Vollversion wechseln!


DJ_Cyberdance schrieb am 23.01.2006 um 14:22

Ich hab zwei Rechner (Nennen wir sie Server und Backup), einer davon soll nur ein Backup vom laufenden System des anderen machen. Ich weiß, daß das für ein Backup riskant ist, aber es funktioniert - wenn ichs manuell mache. Automatisiert via Crontab funktionierts nicht mehr:

Am Server hab ich ein skript, das so aussieht:

Code:
/bin/tar -cpP --one-file-system / | /bin/nc 192.168.2.10 23456 -q 900 

Am Client hab ich folgendes command in einem script:
Code:
/bin/netcat -l -p 23456 -q 900 | /bin/gzip > /home/root/backup_root.tar.gz
shutdown -h now

Wenn ich das Skript @ backup starte, dannserver funktioniert alles wunderbar, nach ~ 1 Stunde ist das Backup fertig. Ich möchte das ganze automatisieren, sprich die Skripts via crontab starten.

Crontab für root @ server:
Code:
59 13 * * 1 /root/backup_server

Crontab für root @ backup:
Code:
58 13 * * 1 /root/backup_from_server

Crontab startet offenbar die Scripts, aber alles was ich bekomme, ist ein leeres File. Die beiden Skripts werden in der gleichen Reihenfolge wie manuell gestartet, erst Backup, dann Server. Die Systemuhren sind via Timeserver gesynct.

Hat jemand eine Idee, wo das Problem liegen könnte?

PS.: Es gibt bestimmt tausend andere Wege, Backups zu machen - aber diese Methode funktioniert für meine Zwecke ausreichend gut, nur Crontab pfuscht irgendwie rein... Die Scripts lassen sich wie gesagt problemlos von der Konsole ausführen und liefern genau das Ergebnis, das ich brauche...


vossi schrieb am 23.01.2006 um 14:41

als laie würd ich sagen den STDERR output in eine textfile umleiten und lesen :) ging irgendwie so &3> oder so ähnlich


DJ_Cyberdance schrieb am 23.01.2006 um 14:49

also in meinen crontabs steht jetzt

/path/to/script &2> /path/to/logfile.log

logfile.log is aber ziemlich leer...


vossi schrieb am 23.01.2006 um 15:00

2>&1 stderr auf stdout
dann > auf eine file

./script 2>&1 > log.txt

ich hab kein System zum probieren und auch keine Ahnung obs der richtige Weg ist, ich versuche nur zu helfen wie gesagt


DJ_Cyberdance schrieb am 23.01.2006 um 15:28

also

Code:
./script 2> filename
leitet stderr auf filename um.

Code:
./script 2>&1 > filename
hängt stderr an stdout an und leitet das ergebnis an filename um.

Nutzt aber beides nix: Ich krieg keine relevanten Fehlermeldungen.


vossi schrieb am 23.01.2006 um 15:31

Soweit so schlecht - jemand mit Ahnung bitte vortreten um meine Peinlichkeiten wettzumachen :p


DJ_Cyberdance schrieb am 24.01.2006 um 09:03

Hab die Ursache gefunden: Liegt am Parameter -q 900 von netcat - hab ihn durch -w 900 ersetzt. Warums manuell geht und nicht via Crontab, hab ich allerdings noch nicht verstanden. Mit -w 900 tuts allerdings auch mit Crontab.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025