Page 1 of 1

Crontab Problem ....

Posted: 2003-06-15 17:18
by Outlaw
Hallo Leute,

ich habe ein kleines Problem:

Ich habe gerade IAM nach der FAQ installiert und wollte den Crontab Eintrag machen aber irgendwie haut das nicht hin. Der Eintrag sieht so aus:

Code: Select all

-*/2 * * * *  /root/confixx/confixx_counterscript.pl
-*/0 4 * * *  /etc/init.d/iptables dump >/dev/null
-*/2 4 * * *  /usr/local/iam/iam_report
@reboot /etc/init.d/iptables start
Zeile 1 ist klar, Confixx soll alle 2 Minuten counterscripten
Zeile 2 soll jeden Morgen um 4.00 Uhr den Dump erstellen
Zeile 3 soll jeden Morgen um 4.02 Uhr den Report erstellen
Zeile 4 soll iptables neu starten

Die "-" sollen ja den Log verhindern, was die "*/" bedeuten, weiss ich noch nicht, is aber vorerst egal.

Mein Problem: Ich kann die Crontabelle nicht schreiben. Egal ob ich mit VI, MC Edit oder PICO die Einträge mache, sobald ich die neuen Daten speichere kommt

Code: Select all

crontab: installing new crontab
und es passiert nichts mehr, kein Rücksprung auf die Shell, gar nix. Ich kann dann nur noch per <STRG><C> abbrechen ....

Was läuft da falsch ??

Gruß Outi

Ach ja, noch was: Wie macht Ihr das mit Eurem Abrechnungszeitraum ??
Bei mir berechnet 1&1 die unterschiedlichsten Zeiten ab, also nicht immer am selben Tag. Mal ist es der 7. dann wieder der 9. dann mal der 8. ....

Oder loggt Ihr immer den 1. eines Monats ??

Re: Crontab Problem ....

Posted: 2003-06-15 18:00
by olaf.dietsche
Outlaw wrote:Ich habe gerade IAM nach der FAQ installiert und wollte den Crontab Eintrag machen aber irgendwie haut das nicht hin. Der Eintrag sieht so aus:

Code: Select all

-*/2 * * * *  /root/confixx/confixx_counterscript.pl
-*/0 4 * * *  /etc/init.d/iptables dump >/dev/null
-*/2 4 * * *  /usr/local/iam/iam_report
@reboot /etc/init.d/iptables start
Zeile 1 ist klar, Confixx soll alle 2 Minuten counterscripten
Zeile 2 soll jeden Morgen um 4.00 Uhr den Dump erstellen
Zeile 3 soll jeden Morgen um 4.02 Uhr den Report erstellen
Zeile 4 soll iptables neu starten

Die "-" sollen ja den Log verhindern, was die "*/" bedeuten, weiss ich noch nicht, is aber vorerst egal.
Das mit dem "-" kenne ich nicht. Ich habe auch nichts dazu in der man page gefunden. Hast du eine spezielle cron Version?

*/x an erster Stelle bedeutet, den Cronjob alle x Minuten ausführen. D.h. iam_report wird von 4:00 bis 4:58 alle zwei Minuten gestartet.

Deine Einträge müssten also so aussehen:

Code: Select all

-0 4 * * *  /etc/init.d/iptables dump >/dev/null
-2 4 * * *  /usr/local/iam/iam_report
Das hilft dir natürlich nicht bei deinem eigentlichen Problem.

Re: Crontab Problem ....

Posted: 2003-06-15 18:15
by Outlaw
Doch, Du hast mir sogar sehr geholfen !! Big Thx nochmal.

Als ich die "*/" bei den Zeilen 2 und 3 entfernt habe, ging es perfekt. Ich vermute, hier kam der Widerspruch "alle 2 Minuten" und "4.00/4.02 Uhr" dem Crontab in die Quere ....

Die Geschichte mit dem "-" habe ich hier aus dem Forum und die funzt prima ....

Gruß Outi

PS: Version: v 2.13 1994/01/17 03:20:37

Re: Crontab Problem ....

Posted: 2003-06-15 18:43
by rootmaster
olaf.dietsche wrote: Das mit dem "-" kenne ich nicht. Ich habe auch nichts dazu in der man page gefunden. Hast du eine spezielle cron Version?
man 5 crontab
If the uid of the owner is 0, he can put a "-" as first
character of a crontab entry. Then cron won't write a sys-
log message about this command.
"back to the roots"

Re: Crontab Problem ....

Posted: 2003-06-15 18:46
by [ djthesound ]
If the uid of the owner is 0, he can put a "-" as first
character of a crontab entry. Then cron won't write a sys-
log message about this command.
Ist es nicht besser wenn alles geloggt wird?

Re: Crontab Problem ....

Posted: 2003-06-15 19:12
by captaincrunch
Ist es nicht besser wenn alles geloggt wird?
Nö, wieso ? Was bringt's dir, alle paar Minuten im Log stehen zu haben, was der Cron so aufgerufen hat ?

Im Fehlerfall kannst du das Logging dann immer noch ganz schnell aktivieren.

Re: Crontab Problem ....

Posted: 2003-06-15 20:52
by olaf.dietsche
rootmaster wrote:
olaf.dietsche wrote: Das mit dem "-" kenne ich nicht. Ich habe auch nichts dazu in der man page gefunden. Hast du eine spezielle cron Version?
man 5 crontab
If the uid of the owner is 0, he can put a "-" as first
character of a crontab entry. Then cron won't write a sys-
log message about this command.
Ich weiß schon, wo "man" nachschaut ;-). In meiner man page steht das nämlich nicht drin, deshalb habe ich ja auch nach der cron Version gefragt.

Re: Crontab Problem ....

Posted: 2003-06-16 01:10
by dea
Dann hast Du aber nicht richtig geschaut.

Am Ende fast jeder Manpage steht "SEE ALSO", bei 'man cron', steht da:

Code: Select all

SEE ALSO
       crontab(1), crontab(5)

AUTHOR
       Paul Vixie <paul@vix.com>

                                                  20 December 1993                                          CRON(8)
D.h. es gibt noch zwei weitere Manpages, eine in der Sektion "Benutzerbefehle" (1) und eine in der Sektion "Dateiformate und Konventionen" ...

Das wertvollste an Manpages sind diese Referenzen auf andere, verwandte Manpages ... :)

Re: Crontab Problem ....

Posted: 2003-06-16 10:25
by olaf.dietsche
dea wrote:Dann hast Du aber nicht richtig geschaut.

Am Ende fast jeder Manpage steht "SEE ALSO", bei 'man cron', steht da:

Code: Select all

SEE ALSO
       crontab(1), crontab(5)

AUTHOR
       Paul Vixie <paul@vix.com>

                                                  20 December 1993                                          CRON(8)
D.h. es gibt noch zwei weitere Manpages, eine in der Sektion "Benutzerbefehle" (1) und eine in der Sektion "Dateiformate und Konventionen" ...

Das wertvollste an Manpages sind diese Referenzen auf andere, verwandte Manpages ... :)
Nun, ich kann nachsehen (crontab(1), crontab(5), cron(8 )) - und vor allem auch ausprobieren - soviel ich will, mein cron kann das nicht:

Code: Select all

# crontab -e
[ein Minus als erstes Zeichen eintragen und dann abspeichern]
crontab: installing new crontab
"/tmp/crontab.nRgGRg/crontab":4: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit?
Na ja, muß ich wohl mit leben.

Re: Crontab Problem ....

Posted: 2003-06-16 11:07
by captaincrunch
Ist es denn ein root-Cronjob ?

Unter Debian gab's da mal irgendwas zu diesen Einträgen, auf die schnelle finde ich aber leider nichts ...

Re: Crontab Problem ....

Posted: 2003-06-16 11:11
by dea
CaptainCrunch wrote:Ist es denn ein root-Cronjob ?

Unter Debian gab's da mal irgendwas zu diesen Einträgen, auf die schnelle finde ich aber leider nichts ...
man 5 crontab ;)

Und der Standard Cron (cron/stable uptodate 3.0pl1-72) von Debian kann das '-' nicht ...

Re: Crontab Problem ....

Posted: 2003-06-16 11:13
by captaincrunch
Und der Standard Cron (cron/stable uptodate 3.0pl1-72) von Debian kann das '-' nicht ...
Ist mir klar, da das bei Debian IMHO anders gelöst worden ist, und genau das "anders" hatte ich gesucht ... ;)

Re: Crontab Problem ....

Posted: 2003-06-16 11:20
by dea
CaptainCrunch wrote:Ist mir klar, da das bei Debian IMHO anders gelöst worden ist, und genau das "anders" hatte ich gesucht ... ;)
Das hat wenig mit Debian zu tun, mehr mit der standardmäßig installierten Variante des Cron (Vixie Cron). Es gibt viele unterschiedliche Crons, jeder kann das eine oder andere nicht oder besser ;)

Re: Crontab Problem ....

Posted: 2003-06-16 12:03
by olaf.dietsche
CaptainCrunch wrote:Ist es denn ein root-Cronjob ?

Unter Debian gab's da mal irgendwas zu diesen Einträgen, auf die schnelle finde ich aber leider nichts ...
Deswegen habe ich den Prompt dazugeschrieben ;-).

Re: Crontab Problem ....

Posted: 2003-06-16 12:20
by olaf.dietsche
dea wrote:
CaptainCrunch wrote:Ist mir klar, da das bei Debian IMHO anders gelöst worden ist, und genau das "anders" hatte ich gesucht ... ;)
Das hat wenig mit Debian zu tun, mehr mit der standardmäßig installierten Variante des Cron (Vixie Cron). Es gibt viele unterschiedliche Crons, jeder kann das eine oder andere nicht oder besser ;)
Ich habe mir ein src rpm von Suse geholt. Dort ist auch ein patch dabei, der den cron wie beschrieben modifiziert.

Damit ist dieses Rätsel auch gelöst. :-D

Re: Crontab Problem ....

Posted: 2003-06-17 22:35
by crasline
doch die Frage bleibt .. wie stelle ich denn nun mit dem standard debian cron das logging ab?

Re: Crontab Problem ....

Posted: 2003-06-17 22:40
by dea
Mit '> /dev/null 2>&1' schreibst Du alle Meldungen der Skripte ins Daten-Nirvana.

Re: Crontab Problem ....

Posted: 2003-06-17 22:42
by crasline
das verhindert doch nur das sie keine error mail verschicken, aber verhindert doch nicht das logging, doch teusch ich mich?

Re: Crontab Problem ....

Posted: 2003-06-17 22:44
by dea
Soll das gesamte Cron-Logging abgestellt werden, empfehle ich die /etc/syslog.conf und man syslog.conf

Re: Crontab Problem ....

Posted: 2003-06-17 23:37
by crasline
hmm .. und wie funktioniert das in der syslog.conf im detail ... find nicht wirklich was in den manpages ..

Re: Crontab Problem ....

Posted: 2003-06-18 01:34
by olaf.dietsche
Crasline wrote:hmm .. und wie funktioniert das in der syslog.conf im detail ... find nicht wirklich was in den manpages ..
Du kannst im syslog.conf anhand von facility und priority steuern wohin die Meldungen geschrieben werden. Eine facility ist CRON. D.h. du definierst einen Eintrag, in dem die Einträge von cron nicht geschrieben oder nach /dev/null umgeleitet werden. Wie das genau geht, kann ich dir leider nicht sagen, weil ich nur noch syslog-ng habe.

Re: Crontab Problem ....

Posted: 2003-08-19 14:57
by ice
Wo wir hier gerade bei root crons sind, habe ich dazu, und zum Thema passend auch ein Problem, welches ich nicht lösen konnte.

Ich verwende, wie Outlaw auch den iam zur Traffikkontrolle.

Hierzu habe ich eine chain erstellt, die west heisst. Diese chain hat folgende Role:

Code: Select all

ACCEPT all all anyware
Das ist auch toll so. Nun möchte ich diese und einige andere chains zeitgesteuert ab- und anschalten. Dazu habe ich folgendes Bashscript geschrieben:

Code: Select all

iptables -D west -j ACCEPT
iptables -A west -j DROP
zum abschalten und

Code: Select all

iptables -D west -j DROP
iptables -A west -j ACCEPT
zum einschalten. Das ganze führe ich aul root aus und alles ist gut. Die weweiligen Ports in der Chain werden gesperrt und auch wieder freigegeben. Nun habe ich einen crontab angelegt, der folgendermassen aussieht:

Code: Select all

0 0 * * * /pfad/zum/script/west_aus.sh
0 12 * * * /pfad/zum/script/west_an.sh
Laut syslog wird das Script auch ausgeführt, nur leider ohne Auswirkung.

Und nun frage ich Euch, warum ist das so?