Scripte in Etch per Cronjob mit Fehlermeldungen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
heinzelrumpel
Beiträge: 159
Registriert: 26.07.2004 20:07:58

Scripte in Etch per Cronjob mit Fehlermeldungen

Beitrag von heinzelrumpel » 09.11.2007 10:44:37

Hallo,

jedes Script, welches per Cronjob aufgerufen wird, produziert Fehlermeldungen. Rufe ich das selbe Script händisch auf, funktioniert alles wunderbar:

Hier mal ein kleines Beispiel:

Code: Alles auswählen

#! /bin/sh

LOG=/var/log/backup.log

echo "*******************************************************************************************************" >> $LOG
echo `date` "Backup beginnt" >> $LOG

tar cfpP /dev/st0 /home 
tar rfpP /dev/st0 /var/lib/qmail/alias/
tar rfpP /dev/st0 /etc/


if [ $? = 0 ]
then
        echo `date` "Backup erfolgreich durchgefuehrt" >> $LOG
                echo "Sicherung auf samba-pdc.rhhu.local wurde auf dem Streamer erstellt! Bitte jetzt das Band wechseln." > /root/sicherung.txt
               cat /root/sicherung.txt | mail -s "Datensicherung auf samba-pdc.rhhu.local erfolgreich" root@******.de
          else
               echo `date` "Fehler beim backup" >> $LOG
               echo "Fehler beim backup auf samba-pdc.rhhu.local" | mail -s "Fehler beim backup auf samba-pdc" root@*****.de
fi

Das merkwürdeige ist, dass ich ca. 40 mails erhalte, die aus der "else" Anweisung heraus abgeschickt werden. Auf der anderen Seite erhalte ich aber ca. 20 mail, die aus der "if" Anweisung generiert werden.

Es gibt da noch ein aneres Script, im dem clamscan aufgerufen wird. Dort passiert das gleich. Bin absolut ratlos. Wie gesagt, rufe ich das Script händisch auf, dann ist alles o.k.

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Beitrag von Natureshadow » 09.11.2007 11:03:50

Wie sieht denn deine crontab aus?

heinzelrumpel
Beiträge: 159
Registriert: 26.07.2004 20:07:58

Beitrag von heinzelrumpel » 09.11.2007 11:14:32

Natureshadow hat geschrieben:Wie sieht denn deine crontab aus?

Code: Alles auswählen

* 3 * * *       root    /root/skripte/backup.sh
#* 16 * * *     root    /root/skripte/virenscan.sh > /dev/null 2>&1
Hatte anfangs bei backup.sh auch ein > /dev/null 2>&1. Habe ich rausgenommen, da ich dachte, es könne evtl. daran liegen

p.s
Debian Etch
samba-pdc:~# uname -r
2.6.18-4-686

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 09.11.2007 12:42:09

Denke, das ist nicht das Problem, aber du solltest dir angewöhnen, in Skripten die Programme mit dem kompletten Pfad aufzufurfen. Also statt tar solltest du /bin/tar schreiben usw.
Das Leerzeichen in deiner Shebang sollte auch raus: #!/bin/sh

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Beitrag von cosmac » 09.11.2007 12:57:37

hi,
heinzelrumpel hat geschrieben:

Code: Alles auswählen

* 3 * * *       root    /root/skripte/backup.sh
das heißt doch, daß das Script ab 03:00 jede Minute gestartet wird?
Wenn man eine Stunde zu 60 Minuten annimmt, wären 60 Mails ja korrekt ;)

Erstaunlich, daß fast die Hälfte fehlerfrei durchläuft.
Beware of programmers who carry screwdrivers.

heinzelrumpel
Beiträge: 159
Registriert: 26.07.2004 20:07:58

Beitrag von heinzelrumpel » 09.11.2007 14:40:44

Oh man, stimmt ja. Der Wald mit den Bäujmen lässt grüßen :oops:

Danke für den Hinweis.

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Beitrag von Natureshadow » 12.11.2007 08:06:52

Und die Tatsache DASS du Mails bekommst, liegt tatsächlich an den Pipews, die du vorher drin hattest.

Antworten