Cronjob wird nicht ausgeführt

hannizkaos

hannizkaos

Aktives Mitglied
Thread Starter
Dabei seit
31.07.2004
Beiträge
776
Reaktionspunkte
1
Moin Forum,

ich hab ein Problem mit einem Cronjob, und zwar habe ich ein kleines Script geschrieben um per rsync ein Backup eines Raids auf eine externe Festplatte machen zu lassen...das funzt auch wunderbar, Backup ist bootbar usw... bis auf die Tatsache, dass es nicht vom cron ausgeführt wird wie ich es befohlen habe :eek: ;)
Das Script brauch logischerweise Root-Rechte, also als root den crontab eingerichtet:
Code:
 00      13      *       *       1,2,3,4,5       /Users/admin/Skripte/backup
Von Montag-Freitag immer um 13.00h soll das Script gestartet werden...passiert aber nicht... kein Plan warum nicht.

Weiss jmd. Rat? P.S. System ist Mac OSX Server 10.3.5

Gruss
 
Hi!

auf meinem iBook (10.3.5, nix Server ;)) sieht meine crontab folgendermaßen aus:
#
#minute hour mday month wday who command
#
#*/5 * * * * root /usr/libexec/atrun
#
# Run daily/weekly/monthly jobs.
15 3 * * * root periodic daily
30 4 * * 6 root periodic weekly
30 5 1 * * root periodic monthly


Das würde für Dich heissen, dass Du bei Deinem Eintrag zwischen die weekdays und das Script noch 'root periodic' eintragen muss.

Probiers ma damit.

Gruß
lama
 
Ist der Pfad zum Script auch richtig? Das Script auführbar? Schreib mal root davor, kann sein das Mac OS X das braucht, damit es weiß unter welchem User es ausgeführt werden soll.

- björn
 
der Username fehlt und ich würde keine TABS verwenden


gruss
kruemel
 
Danke für die Antworten.

Leider funktioniert das alles nicht so wirklich.
Es gibt einerseits die "System-Cronjobs", zu finden unter /etc/crontab
Code:
# /etc/crontab
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
#minute hour    mday    month   wday    who     command
#
#*/5    *       *       *       *       root    /usr/libexec/atrun
#
# Run daily/weekly/monthly jobs.
15      3       *       *       *       root    periodic daily
30      4       *       *       6       root    periodic weekly
30      5       1       *       *       root    periodic monthly
dort werden die "periodic-scripts" angestossen, welche unter /etc/periodic zu finden sind...
So weit so gut, doch sollte es doch eigentlich schon ausreichen, als root per crontab -e einen cronjob einzurichten der sich dann unter /var/cron/tabs/root befindet...?

*verwirrt*

btw: Beitrag 100 :D

[edit]
Hmpf, jetzt funzt es auf einmal... genau so wie ich es am Anfang beschrieben hab...Wie lange dauert es bis der cron-daemon die neuen cronjobs wahrnimmt?
[/edit]
 
Zuletzt bearbeitet:
aber auch nur wenn der root account aktiivert ist ?! Oder ich glaube JA ;)


gruss
Kruemel
 
Kruemel_ddorf schrieb:
aber auch nur wenn der root account aktiivert ist ?! Oder ich glaube JA ;)
Ja, der ist aktiviert.
 
Ist deine aufzurufende Datei ein Shellsript oder ein AppleSript?
Letzteres wird auf die Art und Weise nicht vom Cron-Dienst ausgeführt, egal unter welchem Namen.

Ist es ein Shellsript, benötigt es die Shell des Benutzers unter dem es ausgeführt werden soll. Und die wird oben in der ersten Zeile des Sripts angegeben:

#!/bin/sh für Root und

#!/bin/bash für alle anderen Benutzer

Das Sript muß dann die Rechte (chmod 0755) erhalten und darf keine Ungereimtheiten aufweisen.
 
Es ist ein Shellscript. Es funzt ja auch mittlerweile, bzw. hat es wohl schon immer gefunzt. Ich hab mit nem anderen cronjob getestet, der jede minute ein textfile aufm desktop erzeugt, das hat aber so ca. 15 minuten gedauert bis es ausgeführt wurde. Ich war wohl etwas ungeduldig... :rolleyes:
 
hannizkaos schrieb:
Es ist ein Shellscript. Es funzt ja auch mittlerweile, bzw. hat es wohl schon immer gefunzt. Ich hab mit nem anderen cronjob getestet, der jede minute ein textfile aufm desktop erzeugt, das hat aber so ca. 15 minuten gedauert bis es ausgeführt wurde. Ich war wohl etwas ungeduldig... :rolleyes:

Normalerweise sollte cron nach Ablauf einer Minute alle Änderungen in den crontabs erkennen *grübel*

btw:
ich persönlich schreibe cronjobs, die als root ablaufen sollen in die Datei /etc/crontab.
Das empfinde ich als übersichtlicher, ist aber sicher ein Frage des persönlichen Stils.
 
Zurück
Oben Unten