Hi, ich moechte zu Beginn eines jeden Monats als erstes einen Cronjob ausfuehren. Dabei muss dieser Cronjob entweder sofort beim Umspringen des Datums oder, falls der Rechner zu diesem Zeitpunkt ausgeschaltet war, als erstes nach dem naechsen Hochfahren. Wie muss der entsprechende Eintrag aussehen? Oder funktioniert 0 0 1 * * auch? Gruss Daniel -- ************************************************* * Daniel Jung * Daniel.Jung@dj-web.de * * Linux-User: #118180 * http://fly.to/dulcian * ************************************************* --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Thu, Jul 20, 2000, Daniel Jung wrote:
Hi,
ich moechte zu Beginn eines jeden Monats als erstes einen Cronjob ausfuehren. Dabei muss dieser Cronjob entweder sofort beim Umspringen des Datums oder, falls der Rechner zu diesem Zeitpunkt ausgeschaltet war, als erstes nach dem naechsen Hochfahren.
Wie muss der entsprechende Eintrag aussehen?
Schau mal ins Archiv. Bernd Brodesser hat am 30.5. unter Subject: Cronjobs einen Roman über cron geschrieben. Das sollte Dir das ausreichend erklären. MfG Gunther -- Dipl.-Ing. Gunther Kuhlmann Gunther_Kuhlmann@mentorg.com Tel.: +44 (0)12 52 / 74 83 25 PGP: E6 BC 78 6B E6 09 C7 16 AB 5D 9A 9A D7 1C 01 FB -- --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Gunther Kuhlmann wrote:
Schau mal ins Archiv. Bernd Brodesser hat am 30.5. unter Subject: Cronjobs einen Roman über cron geschrieben. Das sollte Dir das ausreichend erklären.
Das Archiv ist aber verdammt gut versteckt. Was soll das denn, will Suse nicht, dass man das liest?? Frank --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Frank Zimmermann schrieb am 21.Jul.2000:
Gunther Kuhlmann wrote:
Schau mal ins Archiv. Bernd Brodesser hat am 30.5. unter Subject: Cronjobs einen Roman über cron geschrieben. Das sollte Dir das ausreichend erklären.
Das Archiv ist aber verdammt gut versteckt. Was soll das denn, will Suse nicht, dass man das liest?? Frank
Den Eindruck habe ich allerdings auch. Wenn Du es nicht gefunden hast, so kann ich Dir die Mails auch zusenden. Ich habe sie in meinem persönlichen Archiv. Bernd -- Umsteiger von Microsoft Windows xx? Hast Du schon file://usr/doc/howto/de/DE-DOS-nach-Linux-HOWTO.txt gelesen? Auch file://usr/doc/Books/Linuxhandbuch.dvi ist zu empfehlen. |Zufallssignatur 1 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Fri, 21 Jul 2000, Bernd Brodesser wrote:
* Frank Zimmermann schrieb am 21.Jul.2000:
Gunther Kuhlmann wrote:
Hi at all,
Schau mal ins Archiv. Bernd Brodesser hat am 30.5. unter Subject: Cronjobs einen Roman über cron geschrieben. Das sollte Dir das ausreichend erklären.
Das Archiv ist aber verdammt gut versteckt. Was soll das denn, will Suse nicht, dass man das liest?? Frank
Den Eindruck habe ich allerdings auch. Wenn Du es nicht gefunden hast, so kann ich Dir die Mails auch zusenden. Ich habe sie in meinem persönlichen Archiv. Haeh, das Teil braucht zwar tierisch lange zum laden aber es geht ohne Probleme. Nur eine Suchfunktion fehlt noch. URL: http://lists.suse.com/archives/suse-linux/2000-May/ Achtung: Laut w3m 844kb!
Cu, Sven --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Hallo, Sven Hoexter wrote:
Haeh, das Teil braucht zwar tierisch lange zum laden aber es geht ohne Probleme. Nur eine Suchfunktion fehlt noch.
Die Suchfunktion unter: http://www.suse.com durchsucht die Archive der Listen unter "lists.suse.com" wohl automatisch mit... Anonsten ist die Liste auch auf: http://www.geocrawler.com/lists/3/Suse-Linux/287/0/ archiviert. Die Archive unter: http://www.mail-archive.com/suse-linux%40suse.com/index.html ind IMHO eher nicht aktuell... Gruss, Steffen --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Fri, 21 Jul 2000, Frank Zimmermann wrote:
Gunther Kuhlmann wrote:
Schau mal ins Archiv. Bernd Brodesser hat am 30.5. unter Subject: Cronjobs einen Roman über cron geschrieben. Das sollte Dir das ausreichend erklären.
Das Archiv ist aber verdammt gut versteckt. Was soll das denn, will Suse nicht, dass man das liest?? Frank Also ich bevorzuge http://www.geocrawler.de. Ausserdem hat SuSE unter http://lists.suse.com ein eigenes Archiv.
Cu, Sven --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Sven Hoexter wrote:
On Fri, 21 Jul 2000, Frank Zimmermann wrote:
Gunther Kuhlmann wrote:
Das Archiv ist aber verdammt gut versteckt. Was soll das denn, will Suse nicht, dass man das liest?? Frank Also ich bevorzuge http://www.geocrawler.de. Ausserdem hat SuSE unter http://lists.suse.com ein eigenes Archiv.
Hallo Sven, danke fuer den Tip, ich habe mir jetzt endlich ein bookmark gesetzt. Es allerdings doch seltsam, dass man auf der Suse-Seite nichts findet, selbst mit der Suchfunktion habe ich das Archiv nicht gefunden. Frank --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Hallo, Frank Zimmermann wrote:
Es allerdings doch seltsam, dass man auf der Suse-Seite nichts findet,
Alles irgendwie recht gut "versteckt".
selbst mit der Suchfunktion habe ich das Archiv nicht gefunden.
Bei "www.suse.com" solltest Du allerdings mit der Suchfunktion eher fuendig werden. Die scheint mittlerweile naemlich auch die Archive der Listen zu durchsuchen. Gruss, Steffen --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Daniel Jung schrieb am 20.Jul.2000:
ich moechte zu Beginn eines jeden Monats als erstes einen Cronjob ausfuehren. Dabei muss dieser Cronjob entweder sofort beim Umspringen des Datums oder, falls der Rechner zu diesem Zeitpunkt ausgeschaltet war, als erstes nach dem naechsen Hochfahren.
Wie muss der entsprechende Eintrag aussehen?
Oder funktioniert 0 0 1 * * auch?
Nein, so einfach ist das nicht. Cron geht davon aus, daß der Rechner immer an ist. Ist halt nicht für Homeanwender geschrieben worden, sondern gab es schon vor über 20 Jahren und da ist keiner auf die Idee gekommen, daß ein Rechner mehr aus als an sein könnte. Da mußt Du schon einen komplizierteren Mechanismus betreiben. Aber, hey, Du hast Glück. Genau das, was Du willst hat schon jemand für Dich gemacht. Verschieb einfach Dein Skript oder Programm nach /etc/cron.monthly und achte darauf, daß es ausführbar ist. Ein Link reicht. Das Skript wird dann als root ausgeführt. Und zwar 30 Tage nachdem es zum letzten mal ausgeführt wurde oder in der Nacht zum 1. eines jeden Monat, wenn der Rechner dann gerade läuft. Bernd -- LILO funktioniert nicht? Hast Du /etc/lilo.conf verändert und vergessen, lilo aufzurufen? Ist Deine /boot-Partition unter der 1024 Zylindergrenze? Bei anderen LILO Problemen mal in der SDB nachschauen: http://localhost/doc/sdb/de/html/rb_bootdisk.html |Zufallssignatur 6 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Hi Bernd, On Thu Jul 20 23:45:32 2000 CEST Bernd Brodesser wrote:
Verschieb einfach Dein Skript oder Programm nach /etc/cron.monthly und achte darauf, daß es ausführbar ist. Ein Link reicht. Das Skript wird dann als root ausgeführt. Und zwar 30 Tage nachdem es zum letzten mal ausgeführt wurde oder in der Nacht zum 1. eines jeden Monat, wenn der Rechner dann gerade läuft.
Aehm, was heisst "oder" ?! Wird das Script nun 30 Tage nachdem es zum letzten mal ausgefuehrt wurde, oder in der Nacht zum 1. eines jeden Monats ausgefuehrt? Und wenn ich den besagten Artikel aus der Liste richtig verstehe, dann werden die Jobs in diesem Pfad halt auch "nachtraeglich" uasgefuehrt. Cu Daniel -- ************************************************* * Daniel Jung * Daniel.Jung@dj-web.de * * Linux-User: #118180 * http://fly.to/dulcian * ************************************************* --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Daniel Jung schrieb am 21.Jul.2000:
On Thu Jul 20 23:45:32 2000 CEST Bernd Brodesser wrote:
Verschieb einfach Dein Skript oder Programm nach /etc/cron.monthly und achte darauf, daß es ausführbar ist. Ein Link reicht. Das Skript wird dann als root ausgeführt. Und zwar 30 Tage nachdem es zum letzten mal ausgeführt wurde oder in der Nacht zum 1. eines jeden Monat, wenn der Rechner dann gerade läuft.
Aehm, was heisst "oder" ?! Wird das Script nun 30 Tage nachdem es zum letzten mal ausgefuehrt wurde, oder in der Nacht zum 1. eines jeden Monats ausgefuehrt?
Wenn der Rechner in der Nacht zum 1. eines Monats an ist, so werden alle ausführbaren Dateien in /etc/cron.monthly ausgeführt. Und zwar wird um 0:00 Uhr eine Marke weggenommen. Alle Viertelstunde werden die Skripte ausgeführt, wenn die Marke zu alt oder weg ist. Somit werden sie spätestens um 0:15 zum 1. des Monats ausgeführt. Die Marke wird nach jedem Ausführen neu gesetzt. Mit 30 Tagen ist sie zu alt.
Und wenn ich den besagten Artikel aus der Liste richtig verstehe, dann werden die Jobs in diesem Pfad halt auch "nachtraeglich" uasgefuehrt.
Ja. Das meinte ich mit oder. Die werden ausgeführt, wenn sie 30 Tage lang nicht ausgeführt worden sind. Am 1. eines Monats aber auch, wenn der Rechner an ist. Angenommen, Die Programme wurden zuletzt an einem 15. ausgeführt. Ist der Rechner in der Nacht zum darauffolgenden 1. an, so werden sie auch dann ausgeführt. Wenn nicht, dann erst um den nächsten 15. Im nächsten Monat wiederholt sich das. Wenn der Rechner dann mal eine Nacht zum 1. an ist, dann wird das Skript halt dann ausgeführt und ab dann erst wieder zum nächsten 1., da er ja 30 Tage lang nichts macht. Allerdings verunsichert mich auch etwas die 30. Es gibt ja auch Monate mit 31 Tage. Wenn ich das richtig sehe, dann könnte es passieren, daß die Skripte zwei mal kurz hintereinander ausgeführt werden. Einmal zum 31., weil es 30 Tage nach dem 1. ist und dann wieder am 1. weil es der 1. ist. Kann aber auch sein, daß ich da was mit dem find -ctime durcheinandergekommen bin. Ich habe es nicht ausprobiert. Aber es sind alles Skripte, kann man nachsehen. Es geht um die Einträge: -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons 0 0 1 * * root rm -f /var/cron/lastrun/cron.monthly in der /etc/crontab. /var/cron/lastrun/cron.monthly ist besagte Marke, die mit dem zweiten der obigen Zeilen zu Mitternacht des 1. eines Monats gelöscht wird. Und /usr/lib/cron/run-crons ist das besagte Skript. Es wird zuerst, um Fehlermeldungen zu vermeiden, getestet, ob es überhaupt da und ausführbar ist und dann alle viertelstunden zu jeder Zeit ausgeführt. Wie es funktioniert kannst Du nachsehen. Es ist wie gesagt ein Skript. Bernd -- Umsteiger von Microsoft Windows xx? Hast Du schon file://usr/doc/howto/de/DE-DOS-nach-Linux-HOWTO.txt gelesen? Auch file://usr/doc/Books/Linuxhandbuch.dvi ist zu empfehlen. |Zufallssignatur 1 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Bernd Brodesser schrieb in 3,1K (68 Zeilen):
* Daniel Jung schrieb am 21.Jul.2000:
On Thu Jul 20 23:45:32 2000 CEST Bernd Brodesser wrote:
Die Marke wird nach jedem Ausführen neu gesetzt. Mit 30 Tagen ist sie zu alt.
man find sagt zu uns: +n ist groesser als n. Einunddreissig sinds. ~ > mkdir tmp ~ > cd tmp/ ~/tmp > ls ~/tmp > touch a ~/tmp > find -ctime 0 . ./a ~/tmp > find -ctime +0 ~/tmp >
durcheinandergekommen bin. Ich habe es nicht ausprobiert. Aber es sind
Konfuzius sagt: Probieren ist besser als studieren. Das stimmt! -Wolfgang --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Wolfgang Weisselberg schrieb am 28.Jul.2000:
Bernd Brodesser schrieb in 3,1K (68 Zeilen):
Die Marke wird nach jedem Ausführen neu gesetzt. Mit 30 Tagen ist sie zu alt.
man find sagt zu uns: +n ist groesser als n. Einunddreissig sinds.
Das ist richtig, aber die besagte Zeile aus /usr/lib/cron/run-crons (SuSE 6.4) lautet: cron.monthly) TIME="-ctime +30 -or -ctime 30" ;;
durcheinandergekommen bin. Ich habe es nicht ausprobiert. Aber es sind
Konfuzius sagt: Probieren ist besser als studieren. Das stimmt!
Klar, probiert habe ich auch, aber nicht denn vollen Stoff über einen Monat. Und das auch sowohl über eine 30 Tage als auch über einen 31 Tage Monat und Februar am Besten auch noch. Ist mir ein wenig lang. Und Uhren verstelle ich nicht mutwillig. Bernd -- ACK = ACKnowledge = Zustimmung | NAC = No ACknowledge = keine Zustimmung DAU = Dümmster Anzunehmender User | LOL = Laughing Out Loud = Lautes Lachen IIRC = If I Remember Correctly = Falls ich mich richtig erinnere OT = Off Topic = Am Thema (der Liste) vorbei |Zufallssignatur 11 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Fre, Jul 28, 2000 at 08:37:30 +0200, Bernd Brodesser wrote: [Feinheiten des find]
Das ist richtig, aber die besagte Zeile aus /usr/lib/cron/run-crons (SuSE 6.4) lautet:
cron.monthly) TIME="-ctime +30 -or -ctime 30" ;;
[...]
Klar, probiert habe ich auch, aber nicht denn vollen Stoff über einen Monat. Und das auch sowohl über eine 30 Tage als auch über einen 31 Tage Monat und Februar am Besten auch noch. Ist mir ein wenig lang. Und Uhren verstelle ich nicht mutwillig.
<Klugscheisser-Modus> Da gibt es Abhilfe. Man kann ein wenig mit den Optionen rumprobieren, wenn man mit touch arbeitet: touch -m -d "`date -d \"30 days ago\"`" datei liefert eine Datei mit einer mtime von vor 30 Tagen. Das einzige Problem im Zusammenhang mit dem find in cron.monthly ist, dass touch kein Umbiegen der ctime zulässt. Man muss also zum Testen mit einer modifizierten Version des cron-Scripts arbeiten. Dann gehts aber auch ohne Vergewaltigung der Systemzeit und ohne wochenlange Warterei. </Klugscheisser-Modus> Jan --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On 20-Jul-00 Bernd Brodesser wrote:
* Daniel Jung schrieb am 20.Jul.2000:
ich moechte zu Beginn eines jeden Monats als erstes einen Cronjob ausfuehren. Dabei muss dieser Cronjob entweder sofort beim Umspringen des Datums oder, falls der Rechner zu diesem Zeitpunkt ausgeschaltet war, als erstes nach dem naechsen Hochfahren.
Wie muss der entsprechende Eintrag aussehen?
Oder funktioniert 0 0 1 * * auch?
Nein, so einfach ist das nicht. Cron geht davon aus, daß der Rechner immer an ist. Ist halt nicht für Homeanwender geschrieben worden, sondern gab es schon vor über 20 Jahren und da ist keiner auf die Idee gekommen, daß ein Rechner mehr aus als an sein könnte.
Da mußt Du schon einen komplizierteren Mechanismus betreiben. Aber, hey, Du hast Glück. Genau das, was Du willst hat schon jemand für Dich gemacht.
Verschieb einfach Dein Skript oder Programm nach /etc/cron.monthly und achte darauf, daß es ausführbar ist. Ein Link reicht. Das Skript wird dann als root ausgeführt. Und zwar 30 Tage nachdem es zum letzten mal ausgeführt wurde oder in der Nacht zum 1. eines jeden Monat, wenn der Rechner dann gerade läuft.
Ich würde eine einfachere Lösung vorschlagen. Ich gehe mal davon aus das der Eintrag 0 0 1 * * in der crontab für den laufenden Betrieb funktioniert. Dann muß er nur noch den Fall des hochfahrens abdecken. Dafür würde ich irgend wo (je nach dem wann es starten soll) in /sbin/init.d/rc[123].d/ einen link S99meinscript auf das gleiche Script legen, das von cron gestartet wird, und schon hat er diesen Fall auch abgedeckt. Dort kann er sehr genau entscheiden, zu welchem Zeitpunkt beim booten sein Script ausgeführt wird. mfg Peter Küchler Registrierter Linux-User #127408 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
participants (9)
-
B.Brodesser@online-club.de
-
Daniel.Jung@dj-web.de
-
F.Zimmermann@bham.ac.uk
-
gunther_kuhlmann@mentorg.com
-
hoexter@levspace.de
-
Jan.Trippler@t-online.de
-
moser@egu.schule.ulm.de
-
peter.kuechler@frankfurt.netsurf.de
-
weissel@netcologne.de