1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Cron Jobs laufen nicht

Dieses Thema im Forum "macOS & OS X Server" wurde erstellt von fablei, 26.10.06.

  1. fablei

    fablei Gast

    Hallo,
    ich habe folgnedes Problem.

    Ich habe in meiner /etc/crontab einige täglich wiederkehrende Befehle, die ausgeführt werden sollen. Leider passiert nix.

    Die crons sind alle als root eingetragen.

    Wo kann das Problem liegen?

    Viele Grüße,
    FAbian
     
  2. Skeeve

    Skeeve Pomme d'or

    Dabei seit:
    26.10.05
    Beiträge:
    3.121
    Obwohl meine Frau Druck macht, ist meine Kristallkugel immer noch nicht repariert. Also kann ich nur raten:
    • Keine Ausführrechte fürs Script
    • falscher Pfad
    • falsche Zeitangaben (es läuft zu anderen Zeiten als gedacht)
    • ...
    Schau doch mal ob root Mail hat.
     
    xgx7 gefällt das.
  3. fablei

    fablei Gast

    Danke für die schnelle Antwort.

    Das Skript ist ein einfacher Kopierbefehl zum Backup eines Ordners. (cp -r Quelle Ziel). Rechte sollte es dann also haben, oder? Wenn man das in der Shell eingibt läuft es wunderbar.

    Root hat keine Mail.

    Allerdings hat der /etc/crontab unter root mit ls -al nur folgende Rechte:
    "-r--r--r--" Gruppe: wheel

    Ist das korrekt?
     
  4. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    /etc/crontab hat - meines Wissens - ein Extra-Argument, das die anderen nicht haben:
    minute hour mday month wday who command
    Hast Du dort den User angegeben, unter dem es laufen soll?
     
  5. fablei

    fablei Gast

    Wie schon oben geschrieben:

    Die Crons sind alle als root eingetragen.

    FAbian
     
  6. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Für welche Uhrzeit sollen sie laufen?
     
  7. Skeeve

    Skeeve Pomme d'or

    Dabei seit:
    26.10.05
    Beiträge:
    3.121
    zeig uns mal, was crontab -l ausspuckt
     
  8. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    Eigentlich sollte man die /etc/crontab nicht direkt editieren sonder nur per crontab -e. Immerhin wird die crontab nicht mehr direkt vom cron sondern der cron vom launchd aufgerufen. Wahrscheinlich hat niemand den launchd davon in Kenntnis gesetzt.
    Gruß Pepi
     
  9. fablei

    fablei Gast

    Hallo,
    hier mal die /etc/crontab

    Komisch ist übrigens, dass Crons die von mySql Admin gestartet werden ausgeführt werden? Diese sind allerdings einem anderen Nutzer zugeordnet.
    Code:
    # The periodic and atrun jobs have moved to launchd jobs
    # See /System/Library/LaunchDaemons
    #
    # minute        hour    mday    month   wday    who     command
    0       3       *       *       *       root    /etc/ccc.SqRWoKLK.txt >> /private/var/log/cccron.log ## CCC task: http_taeglich
    0       2       *       *       *       root    cp -r /Volumes/Daten1/httpDaten/mystudy /Volumes/Daten2/http_backup/mystudy_`date +%m_%d_%y`
    5       2       *       *       *       root    cp -r /Volumes/Daten1/httpDaten/moodle /Volumes/Daten2/http_backup/moodle_`date +%m_%d_%y`
    10      2       *       *       *       root    cp -r /Volumes/Daten1/httpDaten/moodledata /Volumes/Daten2/http_backup/moodledata_`date +%m_%d_%y`
    c1d8a:~ root# 
    
    Wie kann ich denn der launchd sagen das sie sich bitte mal um die crons kümmert?

    Vielen Dank,
    Fabian
     
  10. Patrick

    Patrick Uelzener Rambour

    Dabei seit:
    01.05.04
    Beiträge:
    366
  11. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Hast Du den Rechner neu gestartet nach dem Ändern? Möglicherweise wurde cron nicht aktiv als Dämon, weil die crontab beim Start leer war.

    Ist Dein Rechner wach zu den angegebenen Zeiten? Wenn er im Ruhezustand ist, macht er keine cronjobs.
     
  12. fablei

    fablei Gast

    Hallo,
    da es sich um einen Server handelt, ist er immer am laufen. Einen Neustert habe ich nicht gemacht, seitdem ich die Änderungen an der crontab mit Cronnix vorgenommen habe.

    Kann ich den Crondaemon denn ohne Neustart des Systems neustarten?
     
  13. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    sudo cron
     
  14. fablei

    fablei Gast

    Danke für die Antwort,
    aber nun steht in meinem Terminal folgendes:

    Code:
    c1d8a:/ root# sudo cron
    cron: can't lock /var/run/cron.pid, otherpid may be 80: Resource temporarily unavailable
    
    Hat das was mit meinem Problem zu tun, oder mache ich einfach nur was falsch?

    Gruß,
    Fabian
     
  15. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Du bist als root eingeloggt! Warum?

    Als root kannst Du sudo weglassen und einfach "cron" aufrufen.
     
  16. cron checkt von alleine minütlich alle cronfiles.

    -Ralph
     
  17. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Auch wenn die crontab leer ist?
     
  18. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Da cron und andere seit 10.4 von launchd ersetzt werden: Warum probierst Du es nicht mit launchd? ;)
     
  19. Marcel Bresink

    Marcel Bresink Sonnenwirtsapfel

    Dabei seit:
    28.05.04
    Beiträge:
    2.420
    Es kann sehr gute Gründe dafür geben, launchd nicht zu benutzen und stattdessen die /etc/crontab direkt zu verändern. Das ist auf einem Server vor allem die einfachste und bequemste Lösung.

    Der Fehler ist höchstwahrscheinlich, dass das Programm "cp" nicht gefunden wird. Du kannst nicht davon ausgehen, dass cron Programme in bestimmten Umgebungen oder Shells startet. Deshalb sind keine Suchpfade voreingestellt. Das könnte sonst auch zu erheblichen Sicherheitsproblemen führen.

    Versuche bitte, die Angabe "cp" durch die vollständige Angabe /bin/cp zu ersetzen.
     

Diese Seite empfehlen