Meine Cronjobs werden nicht mehr ausgeführt

Dieses Thema im Forum "Server Administration" wurde erstellt von M. Zink, 20. Jan. 2010.

  1. M. Zink

    M. Zink New Member

    Hallo,

    habe nach langer Fummelei mal wieder ein Problem. Und zwar werden bestimmte Cronjobs nicht mehr ausgeführt.

    Ich habe wenn ich crontab -e eintrage einige Jobs von ISPC drin und einen von postfix. Unter /etc/crontab habe ich noch etliche weitere Cronjobs liegen. Der einzige User den ich in ssh nutze ist root. Die Jobs welche ich unter crontab -e sehe werden wie es aussieht ausgeführt aber alle unter /etc/crontab nicht. Und ich finde einfach nicht heraus was das Problem ist. Den Dienst crond hab ich schon 100 mal neu gestartet und auch den ganzen Server neu gebootet. Alles ohne Erfolg.

    Wie kann ich denn kontrollieren wodurch die Cronjobs überhaupt ausgeführt werden also sprich irgendwo muss ja stehen das die jobs in /etc/crontab ausgeführt werden sollen genau so wie irgendwo die crontab welche ich über crontab -e erreiche liegen muss. Ich blick da grad nicht mehr ganz durch und bin für Hilfe dankbar!

    Grüße
    Marco
     
  2. M. Zink

    M. Zink New Member

    Ou das ganze ist doch noch schlimmer als erwartet. Es laufen tatsächlich keinerlei Cronjobs mehr. Allerdings der Dienst läuft und es gibt auch keine Fehlermeldungen. Ich hab die wichtigen Cronjobs jetzt mal manuell laufen lassen. Aber das geht natürlich nicht das ich das jeden Tag mache.

    In welchem Log sollte wenn denn was stehen oder erzeugt das ganze keine Ausgabe? Manuell kann ich nur cron.dayly oder cron.hourly anstoßen aber nicht /etc/crontab denn dort werden die anderen ja aufgerufen. Ich hab natürlich meine eigenen Crons in cron.dayly bzw. cron.hourly oder weekly drin aber das hilft mir im jetzigen Stadium ja nicht.

    Hoffe auf baldige Hilfe da meine Sicherung ebenfalls über cronjobs läuft und desentsprechend im Moment nicht läuft.
     
  3. Till

    Till Administrator

    Versuch mal folgendes: Editiere die root crontab mit crontab -e, kopiere alle cronjobs raus, so dass die crontab leer ist und speicher sie. Dann wieder crontab -e und alle cronjobs wieder einfügen. dann den cron Daemon neu starten.
     
  4. M. Zink

    M. Zink New Member

    Mist bin schon wieder bis heute nicht dazu gekommen das Problem weiter zu analysieren. Aber es sieht so aus, dass immer noch keine Cronjobs laufen. Habe weitestgehend alle mal manuell ausgeführt und dabei auch keine Fehlermeldung erhalten. Allerdings hat sich an den Jobs schon ewig nichts verändert von daher wüsste ich nicht warum die nicht laufen sollten. Wie dem auch sei, es läuft jedenfalls kein einziger Job auch nach dem leeren und füllen von crontab -e.
    Meine eigenen Crons hab ich bis jetzt immer unter /etc/crontab mit pico eingepflegt und dort ist auch minutengenau mein ganzes Backup Zeug drin. Das lieft auch ewig bis eben nun gar keine Crons mehr ausgeführt werden. Merkwürdigerweise finde ich aber auch in keinem Log irgendwas zu den Cronjobs. Es ist als würde der Dienst gar nicht laufen obwohl er in der Prozessliste steht und ich ihn auch schon mehrfach neu gestartet hab ohne Probleme.

    Wie könnte ich denn meine Einträge in /etc/crontab in eine Datei in cron.dayly packen damit ich zumindest die Backups manuell ausführen könnte? So stehen meine Einträge dort momentan drin und die Angabe von Usernamen ist soweit ich weiß in cron.dayly ja nicht machbar.
    Davon hab ich glaube ich so an die 70 Einträge und ganz am Ende rufe ich ein Shellscript auf welches die Backups alle auf einen externen FTP schiebt.

    Lange Rede kurzer Sinn - HILFE :D
     
  5. Till

    Till Administrator

    Was passirt denn, wenn Du den cron daemon neu startest? Irgendwelche Fehler im syslog?
     
  6. M. Zink

    M. Zink New Member

    Nein, absolut gar nichts. Der Daemon startet ohne besondere Meldung und im Syslog steht lediglich alle paar Minuten irgend ein Eintrag von meinem Munin und in gewissen Intervallen ein paar Einträge von ISPC aber nicht so viele wie eigentlich da sein sollten.

    Irgendwie verwundert mich das aber auch das die Cronjobs nicht laufen und nirgendwo dazu eine Meldung auftaucht. Normal wird doch jedes Verhalten geloggt und irgendwo notiert. Würde das in dem Fall bedeuten es ist kein Fehler sondern der Daemon weiß vielleicht gar nicht mehr welche Dateien er ausführen soll? Denn die cron.dayly cron.weekly usw. werden innerhalb der /etc/crontab ausgeführt und möglicherweise hängt alles daran, dass diese datei nicht mehr aufgerufen wird? Oder darf diese nur eine bestimmte Anzahl an Einträgen haben?

    Wie müsste denn eine Datei innerhalb cron.dayly aussehen damit sie mir eine bestimmte MySQL Tabelle dumpt und wie müsste eine aussehen damit ein Verzeichnis mit Tar und GZ gepackt wird? Wenn ich das hin bekommen würde könnte ich die /etc/crontab ja mal leer machen und schauen ob es dann wieder läuft oder bringt das so oder so nichts?
     
  7. Till

    Till Administrator

    Ich würde dsa mit dem crontab leeren mal versuchen, also mit crontab -e editieren, alles rauskopieren und speichern. Und danach mal einen test-cronjob rein tun und sehen ob er ausgeführt wird. Wenn das geht kannst Du ja mal stück für stück die alten cronjobs reinkopieren und zwischendurch prüfen, ob sie noch laufen.
     
  8. M. Zink

    M. Zink New Member

    Ich hab ja mit crontab -e alle enthaltenen schon raus gemacht. Dort sind aber eh ausschließlich die von ISPC drin und irgend einer von Postfix. Meine eigenen hab ich alle unter /etc/crontab drin.
     
  9. Till

    Till Administrator

    Ich würde cronjobs immer mit crontab -e neu anlegen und nicht die /etc/crontab manuell editieren.

    Und Du hast nach dem Editieren von /etc/crontab immer den Befehl "crontab" aufgrufen, damit die Änderungen übernommen werden?
     
  10. M. Zink

    M. Zink New Member

    So meine Cronjobs laufen wieder. Mir ist leider nur nicht klar warum. Folgendes habe ich jetzt gemacht.

    Ich hatte vorher meine Cronjobs immer unter /etc/crontab eingetragen und die liefen auch eine ganze Zeit lang. Nachdem aber nun das Problem aufgetreten war habe ich diese komplett gelöscht und von einer frischen Installation die Datei dort hin kopiert also sprich wieder um Urzustand. Außerdem habe ich mit crontab -e alle Jobs gelöscht und gespeichert und den Daemon neu gestartet. Danach dann wieder die Jobs rein + meine zwei Jobs welche nun mein Backup erledigen und wieder gespeichert und den Daemon neu gestartet. Und jetzt plötzlich ohne das ich den Grund dafür finde laufen die Cronjobs wieder. Ich kann mir nur vorstellen das ich beim Editieren der Crontab unter /etc/crontab irgend einen Tipfehler rein gehauen hab den ich nicht gesehen hab. Oder ich hatte einfach zu viele Einträge drin. (ca. 120 Jobs).

    Meine neue Methode den Server zu sichern ist übrigens absolut total übermäßig genial. Ich nutze ein Shellskript welches alle Datenbanken vom MySQL Server dumpt und so Sicherungen für Tage, Wochen und Monate anlegt. Das Skript kann gezielt einzelne Datenbanken sichern oder einfach alle die da sind. Dann hab ich noch ein Skript "reoback" welches inkrementel die Daten die ich haben möchte sichert. Das heißt es gibt ein Conf File welches festlegt wie die Sicherungsdatei heißen soll und welche Daten darin enthalten sein sollen. Dann werden 14 Sicherungen angelegt wobei die erste immer ein Full Backup ist und alle weiteren dann inkrementel. Und nach der 14ten wird dann die erste inkrementelle überschrieben. Das Tool packt auch direkt alles auf einen FTP wenn man möchte. Super einfach und ohne groß Schnick Schnack aber macht absolut exakt was ich immer haben wollte. Vorher hat meine Sicherung immer mehrere Stunden gedauert da ja immer alles komplett gesichert wurde und jetzt dauert alles zusammen höchstens 15 Minuten. Das heißt ich kann jetzt auch endlich mehrere Sicherungen an einem Tag fahren ohne dabei zeitliche Probleme zu bekommen. Im Moment läuft die Sicherung jetzt alle 3 Stunden wobei sogar zwei verschiedene FTP Server genutzt werden. Das heißt ein mal am Tag sichere ich auf den FTP meines lokalen Windows Servers und sonst alle 3 Stunden auf den Backup FTP von Hetzner.

    Falls Interesse besteht kann ich gerne beschreiben wie ich das eingerichtet hab wobei ich mich nicht in der Lage sehe so schöne HowTos zu machen wie ihr die macht. Wenn würd ich das gerne jemand beschreiben der dann daraus so ein HowTo macht falls das überhaupt jemand interessiert.
     
  11. Laubie

    Laubie Member

    natürlich besteht Interesse :)
    immer her damit. Ich kann das mit den HowTos zwar auch nicht so schön, aber schreib das doch mal in ein Forum-Thread, dann kann da ja ein könner ein HowTo raus machen ;)

    Grüße
    Laubie
     
  12. F4RR3LL

    F4RR3LL Member

    Servus Mr. Zink,
    ich kenne reoback auch, dieses Tool ist wie du schon beschrieben hast wirklich interessant.... insbesondere wegen der incrementellen Sicherungen.
    Aber, hast du schonmal wenn du ein paar Wochen so gesichert hast die Backupstruktur angeschaut, es gibt Leute denen das gefällt, ich gehöre eher zu denen die dann lieber einen rsync machen.

    Zu reoback selber gibt es ein recht gut beschriebenes Howto-> http://www.strato-faq.de/artikel.html?id=1193

    Was jedoch bestimmt interessant ist wäre als Howto...
    reoback vs rsync oder so... vor und Nachteile im Überblick ..sowas in der Art. Nur ein Gedanke

    Gruß ein rsync Fan ;)

    Sven
     

Diese Seite empfehlen