[gelöst] Cronjobs werden nicht ausgeführt

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

[gelöst] Cronjobs werden nicht ausgeführt

Beitrag von Alphaman » 25.07.2007 10:36:28

Hi Leute,

ich habe ein mittel grosses Problem und ich verstehe nicht warum das nicht geht.

Ich habe unter dem Benutzer root mittels crontab -e die Cronjobs bearbeitet und gesagt das er alle 10 Minuten z.B. den Webalizer aufrufen soll um die Information aus dem Apache Logfile zu analysieren.

Die Zeile sieht folgendemaßen aus:

*/10 * * * * root /usr/local/webalizer/webalizer -c /usr/local/webalizer/webalizer.conf

Leider klappt das nicht. Der Cronjob wird nicht ausgeführt.

Dann gibt es noch unter /etc die Ordner cron.hourly, cron.daily usw.

Ich habe dort eine Datei erstellt in dem der oben genannte Befehl ausgeführt wird. Die Datei ist startbar. Leider werden die Dateien in Daily und Hourly nicht ausgeführt. Wenn ich sie direkt in dem Verzeichnis aufrufe dann gehen sie.

Kann mir jemand sagen woran das liegen kann das die Sachen nicht ausgeführt werden.

Ich habe leider den Server nicht aufgesetzt, daher kann ich nicht sagen was alles eingestellt ist.

Ich hoffe das mir jemand helfen kann. Dickes Danke schon mal im voraus.

Gruß,
Alphaman
Zuletzt geändert von Alphaman am 25.07.2007 13:06:50, insgesamt 1-mal geändert.

guenni81
Beiträge: 295
Registriert: 30.11.2006 22:26:48
Lizenz eigener Beiträge: GNU General Public License

Beitrag von guenni81 » 25.07.2007 10:42:33

Prüfe mal ob anacron installiert ist.
mfg
Günni

Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

Beitrag von Alphaman » 25.07.2007 10:44:52

guenni81 hat geschrieben:Prüfe mal ob anacron installiert ist.
Werde ich machen, aber ich muss zugeben das ich in Debian noch nicht soooo fit bin. Kannst Du bitte schreiben wie ich das überprüfe. Danke.

guenni81
Beiträge: 295
Registriert: 30.11.2006 22:26:48
Lizenz eigener Beiträge: GNU General Public License

Beitrag von guenni81 » 25.07.2007 10:49:29

Dies kannst du auf der Konsole mit
aptitude search anacron
ermitteln
mfg
Günni

Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

Beitrag von Alphaman » 25.07.2007 10:53:58

guenni81 hat geschrieben:Dies kannst du auf der Konsole mit
aptitude search anacron
ermitteln
Den Befehl "aptitude" kennt das System nicht.

guenni81
Beiträge: 295
Registriert: 30.11.2006 22:26:48
Lizenz eigener Beiträge: GNU General Public License

Beitrag von guenni81 » 25.07.2007 11:09:11

Ok, dann nimm folgenden Befehl
dpkg -l | grep anacron
mfg
Günni

Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

Beitrag von Alphaman » 25.07.2007 11:46:28

guenni81 hat geschrieben:Ok, dann nimm folgenden Befehl
dpkg -l | grep anacron
Ich habe jetzt den Befehl eingegeben und keine Antwort rausbekommen. Ich habe auch nochmal nach geschaut mit

dpkg -l | more

Das Paket anacron ist nicht installiert. Wie kann ich das installieren. Evtl. mit apt-get install anacron ?

Gruß,
Alphaman

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

Beitrag von cosmac » 25.07.2007 11:52:07

hi,

entschuldigung, wenn ich mich einmische, aber was wollt ihr
mit anacron auf einem Server? Der läuft doch rund die Uhr?
Für normale PCs, die meistens ausgeschaltet sind, ist anacron
richtig, ansonsten gibt's mit dem echten cron weniger Stress.

Der eigentliche Fehler ist doch der Username "root" in einer
benutzerspezifischen crontab. Die User-Angabe gibt es nur in
zentralen "/etc/crontab".

Um die richtige der vielen crontabs für den Job zu finden, kann
man einfach sagen, daß alle Verzeichnisse "/etc/cron.*" der
Distribution gehören. Dann bleiben noch "/etc/crontab" und
die benutzerspezifischen, die man mit crontab -e bearbeitet.
Für alles, was unter einem normalen User laufen kann (sollte)
ist die Sache klar. Für Jobs, die als root laufen müssen, kann
man sich's aussuchen. Die LSB-Spec sagt, daß /etc/crontab
nicht von der Distribution geändert werden soll, also gehört
sie mir ;)
Beware of programmers who carry screwdrivers.

Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

Beitrag von Alphaman » 25.07.2007 12:06:41

Ich habe mittels crontab -e die Crontab für den root User bearbeitet und die Zeile auch ohne den Benutzer root ausprobiert:

*/10 * * * * /usr/local/webalizer/webalizer -c /usr/local/webalizer/webalizer.conf

eingetragen und das geht auch nicht. Die Dateien in /etc/cron.* führt er auch nicht aus.

Warum, das ist hier die Frage.

Gruß,
Alphaman

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

Beitrag von cosmac » 25.07.2007 12:25:09

vergiss mal erstmal die Dateien in /etc/cron.*
So wie die Zeile jetzt aussieht, finde ich keinen Fehler.

Normalerweise schreibt cron Meldungen nach /var/log/syslog
und versendet Fehlermeldungen per Mail an root. Ist da was
zu finden? Läuft cron am Ende garnicht?

Code: Alles auswählen

grep -i cron /var/log/syslog
ps ax | grep cron
ls -l /var/mail
Beware of programmers who carry screwdrivers.

Alphaman
Beiträge: 10
Registriert: 25.07.2007 10:02:50

Beitrag von Alphaman » 25.07.2007 12:51:45

Gute Nachricht, es geht jetzt. Ich habe mir das ganze noch mal angeschaut und gesehen das in der syslog doch die Cron Jobs bzw die Cron Verzeichnisse ausgeführt werden.

Daher bin ich dem webalizer noch mal auf den Grund gegangen und festgestellt das im plötzlich eine Library fehlte. Ich habe diese dann vom Webalizer Verzeichnis ins /usr/lib Verzeichnis kopiert und schon ging er wieder.

Ich kann es zwar nicht verstehen da er gestern einwandfrei ging.

Das Ergebnis zählt und es läuft ja. Danke allen noch mal die mir geholfen haben.

Gruß,
Alphaman

guenni81
Beiträge: 295
Registriert: 30.11.2006 22:26:48
Lizenz eigener Beiträge: GNU General Public License

Beitrag von guenni81 » 25.07.2007 13:17:44

@cosmac
hast recht, an den Benutzer hab ich gar nimmer gedacht das der da nix drin zu suchen hat, wenn man dies mit crontab -e einrichtet.
Mit anacron hast du schon rech, wäre aber eventuell wenn es installiert gewesen wäre ein Problem gewesen, da der Rechner, wie du schon sagtest dauerhaft läuft.
mfg
Günni

Antworten