Hi Ich habe folgendes Problem : Die Suse-Cronjobs starten leider manchmal zu absolut unpassenden Zeitpunkten, z.B wenn ich CDs brenne. Einige CDs sind dadurch schon mit Buffer-Underruns getötet werden, beim letzten Mal war es mit 4 % doch irgendwie relativ knapp. Kann mir überhaupt mal das Prinzip hinter dem Suse-Cronjob-Prinzip erklären ? Ich kann zwar die Einträge in der crontab interpretieren, aber da scheinen ja nochmal Sachen unter /usr/lib , /var/ und /etc/cron.daily von Bedeutung zu sein. Wie kann ich es vermeiden, daß die Skripte ausgeführt werden wenn cdrecord oder cdrdao aktiv bzw. das cdrdao und cdrecord während des Ausführung einen Brennvorgang starten ? Tschau Stefan --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Stefan Malte Schumacher wrote:
Wie kann ich es vermeiden, daß die Skripte ausgeführt werden wenn cdrecord oder cdrdao aktiv bzw. das cdrdao und cdrecord während des Ausführung einen Brennvorgang starten ?
In die Skripte, die vom cron aufgerufen werden, etwas in der Art wie: (ps aux | grep cdrecord) && exit chreiben, oder cdrecord mit 'nem grösseren FIFO-Buffer ausstatten.. Thorsten -- BUGS This manpage is confusing. (man 3 getopt) --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Stefan Malte Schumacher wrote:
Hi
Ich habe folgendes Problem : Die Suse-Cronjobs starten leider manchmal zu absolut unpassenden Zeitpunkten, z.B wenn ich CDs brenne. Einige CDs sind dadurch schon mit Buffer-Underruns getötet werden, beim letzten Mal war es mit 4 % doch irgendwie relativ knapp. Kann mir überhaupt mal das Prinzip hinter dem Suse-Cronjob-Prinzip erklären ? Ich kann zwar die Einträge in der crontab interpretieren, aber da scheinen ja nochmal Sachen unter /usr/lib , /var/ und /etc/cron.daily von Bedeutung zu sein.
Wie kann ich es vermeiden, daß die Skripte ausgeführt werden wenn cdrecord oder cdrdao aktiv bzw. das cdrdao und cdrecord während des Ausführung einen Brennvorgang starten ?
Hallo Stefan, Also ich hab durch sowas unter Linux noh keine CD kaputt bekommen (Bufferunderrun). cdrecord laeuft doch mit einer hohen Prio. P233MMX 64MB Seagate-Barracuda (20GB, IDE) Bei hoert man das richtig, wenn waehrend dem brennen so ein Script loslaeuft. Normalerweise macht das dann: rarrarrarrarrarrarrarrarrarrarrar Beim brennen macht es nur noch: rar..rar..rar..rar..rar ;-) Gruss Marc -- +------------------------------------------------------------------+ | --> http://www.links2linux.de <-- Von Linux-Usern fuer Linux-User| | | +---Registered-Linux-User-#136487------------http://counter.li.org + --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Mon, Mai 29, 2000 at 10:16:01 +0200, Stefan Malte Schumacher wrote:
Ich habe folgendes Problem : Die Suse-Cronjobs starten leider manchmal zu absolut unpassenden Zeitpunkten, z.B wenn ich CDs brenne. Einige CDs sind dadurch schon mit Buffer-Underruns getötet werden, beim letzten Mal war es mit 4 % doch irgendwie relativ knapp. Kann mir überhaupt mal das Prinzip hinter dem Suse-Cronjob-Prinzip erklären ? Ich kann zwar die Einträge in der crontab interpretieren, aber da scheinen ja nochmal Sachen unter /usr/lib , /var/ und /etc/cron.daily von Bedeutung zu sein.
Lesen hilft. SCNR man crontab und schau Dir die aufgerufenen Scripts mal genauer an (ist gleich noch eine prima Shell-Weiterbildung), ...
Wie kann ich es vermeiden, daß die Skripte ausgeführt werden wenn cdrecord oder cdrdao aktiv bzw. das cdrdao und cdrecord während des Ausführung einen Brennvorgang starten ?
Stoppe den cron-Daemon, solange Du zeitkritische Sachen veranstaltest: /etc/rc.d/cron stop Jan --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Jan Trippler wrote:
... Lesen hilft. SCNR man crontab Ack. Und auch "man 5 crontab".
Rgds. Heiko. --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Stefan Malte Schumacher schrieb am 29.Mai.2000:
Ich habe folgendes Problem : Die Suse-Cronjobs starten leider manchmal zu absolut unpassenden Zeitpunkten, z.B wenn ich CDs brenne. Einige CDs sind dadurch schon mit Buffer-Underruns getötet werden, beim letzten Mal war es mit 4 % doch irgendwie relativ knapp. Kann mir überhaupt mal das Prinzip hinter dem Suse-Cronjob-Prinzip erklären ? Ich kann zwar die Einträge in der crontab interpretieren, aber da scheinen ja nochmal Sachen unter /usr/lib , /var/ und /etc/cron.daily von Bedeutung zu sein.
Ich habe SuSE 6.3 und kann daher nur dieses beschreiben. Da sich hier bei den letzten Ausgaben was getan hat, kann es sein, daß es bei 6.4 wieder etwas anders ist. Ok, dann wollen wir mal: (ich fange lieber trotzdem von vorne an) Erst einmal muß man unterscheiden zwichen /etc/crontab und Einträgen in /var/cron/tabs/$USER unterscheiden. Da der Name des Users bei /var/cron/tabs/$USER schon im Tabellenname steckt, braucht dort keine Userangabe gemacht zu werden, und darf es daher auch nicht. Ein Eintrag in /etc/crontab lautet: Min Std Tag Monat Wtag User Befehl typisches Beispiel: 5 22 * * * root test -x /usr/sbin/texpire && /usr/sbin/texpire Es wird jeden Tag um 22.05 als root der Befehl test -x /usr/sbin/texpire && /usr/sbin/texpire ausgeführt. Bei den Minuten steht hier 5. Das heißt fünf Minuten nach der vollen Stunde. Es könnte auch so etwas wie 10,30,50 stehen, das würde sowohl zehn nach, als auch um halb als auch um zehn vor bedeuten. Es wäre auch 10-20 möglich. Das hieße jede Minute zwichen zehn nach und zwanzig nach. Auch eine Kombination ist möglich: 10-20,30-40,50 bedeutet jede Minute zwichen zehn und zwanzig nach sowie jede Minute zwichen halb und zwanzig vor und um genau zehn vor. Wichtig ist hier allerdings, daß kein Leerzeichen dazwichen gerät, da dann die nächste Zahl als Stunde interpretiert würde. * steht hier für jede Minute. Auch geht so etwas wie */2, was jede zweite Minute bedeutet, oder */15 bedeutet alle Viertelstunden. Auch geht soetwas wie 10-30/5 was alle fünf Minuten zwichen zehn nach und halb bedeutet. Entsprechendes gilt auch für Stunden, Tage, Monat und Wochentag. Bei Wochentag ist noch zu sagen, daß 0 und 7 für Sonntag steht und dementsprechend 1 für Montag usw. Der Befehl wird ausgeführt, wenn sowohl Minute, Stunde, Tag *oder* Wochentag und Monat stimmen. Bitte beachte das oder zwichen Tag und Wochentag. Der Eintrag 30 13 1,15 5-8 5 hugo echo Wir haben einen Monat ohne ``R'' wird jeden Freitag (5) *und* an jedem Ersten und 15. um 13.30 von Mai bis August als User hugo ausgeführt. Einträge in /var/cron/tabs/$USER funktionieren genau so, nur daß der User im Eintrag nicht mehr auftauchen darf. Obiger Eintrag würde in /var/cron/tabs/root 5 22 * * * test -x /usr/sbin/texpire && /usr/sbin/texpire lauten. Der Eintrag mit den R-losen Monaten würde in /var/cron/tabs/hugo stehen und 30 13 1,15 5-8 5 echo Wir haben einen Monat ohne ``R'' lauten. Zu beachten ist, daß die Umgebungsvariablen wärend der Ausführung anders sind als normalerweise. Insbesondere ist der Pfad anders gesetzt. Man kann aber auch in der crontab Umgebungsvariablen explizit angeben. Wichtig ist auch zu wissen, daß dem Befehl keinem Bildschirm zugeordnet ist. Wenn es eine Ausgabe oder Fehlerausgabe gibt, die nicht umgelenkt wurde, so wird sie als mail verschickt. Alles was im Befehl nach dem ersten unmaskierten % kommt wird als Standardeingabe genommen. Weitere % stehen für ein Return. Will man ein % haben, so muß man \% schreiben. ==================================================================== o, soweit zu dem wie crontab funktioniert. Mit cron kann man z.B wunderschön Aufräumarbeiten machen. Das Problem sind Maschienen, die nicht ständig laufen. Was nützt es, wenn in der crontab steht, daß nachts um 3.00 alle älteren temporären Datein gelöscht werden sollen, wenn um der Zeit der Rechner nicht läuft. Bei UNIX stellt sich diese Problem nicht, der Rechner ist höchstens zu den Betriebsferien ausgeschaltet, fals es soetwas gibt. Viele Heimanwender schalten aus alter Gewohnheit aber ihren Rechner Nachts aus. Daher gibt es bei der SuSE-Standard crontab den Eintrag: [1] -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons Das - am Anfang dient zur Vermeidung einer syslog-message. Jede Viertelstunde wird somit als root /usr/lib/cron/run-crons ausgeführt, so diese Datei existiert und ausführbar ist. Was beinhaltet dieses Skript? Kann man ja nachsehen: ;)) Nach einigen Tests, ob es überhaupt ausgeführt werden soll [2] wird nachgesehen, ob die Verzeichnisse /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly und /etc/cron.monthly existiern. Wenn ja, so wird nachgesehen, ob die Datei /var/cron/lastrun/cron.hourly, /var/cron/lastrun/cron.daily, /var/cron/lastrun/cron.weekly bzw. /var/cron/lastrun/cron.monthly älter als 60 min, ein Tag, sieben Tage bzw. dreißig Tage ist und gegebenenfalls gelöscht. (Wenn sie älter ist) Ist eine solche Datei nicht vorhanden, sei es, daß sie noch nicht eingerichtet war, sei es daß sie soeben gelöscht wurde, so wird nun eine ebensolche angelegt und alle ausführbare Programme die sich im Verzeichnis /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly bzw. /etc/monthly befinden ausgeführt. Ist hingegen die Datei /var/cron/lastrun/cron.hourly, /var/cron/lastrun/cron.daily, /var/cron/lastrun/cron.weekly bzw. /var/cron/lastrun/cron.monthly vorhanden und somit jünger als 60 min, ein Tag, sieben Tage bzw. dreißig Tage (sonst wären sie nicht vorhanden), so geschieht nichts. Zum Schluß werden noch alle /var/cron/lastrun/* Dateien die jünger sind als jetzt gelöscht. Dateien aus der Zukunft mögen wir nicht. ;) Darüberhinaus gibt es in /etc/crontab noch folgende Einträge: 0 0 * * * root rm -f /var/cron/lastrun/cron.daily 0 0 * * 6 root rm -f /var/cron/lastrun/cron.weekly 0 0 1 * * root rm -f /var/cron/lastrun/cron.monthly Diese Einträge bewirken, daß um Mitternacht jeden Tages /var/cron/lastrun/cron.daily, um Mitternacht jeden Samstags /var/cron/lastrun/cron.weekly und um Mitternacht jeden ersten eines Monats /var/cron/lastrun/cron.monthly gelöscht wird. Das bewirkt, daß eine viertel Stunde später die Programme in /etc/cron.daily, /etc/cron.weekly bzw. /etc/cron.monthly ausgeführt werden. Insgesamt bedeutet daß, das jeden Tag kurz nach Mitternacht alle ausführbaren Dateien in /etc/cron.daily ausgeführt werden. Ist der Rechner zu dieser Zeit nicht an, so passiert es ersatzweise kurz nach dem booten. Entsprechendes gilt für die anderen Verzeichnisse. [1] Es ist ein Eintrag wie jeder andere. Man kann ihm natürlich auch heraus nehmen, aber dann sollte man wissen, was man tut. Aufräumarbeiten sind nicht schlecht. [2] Für Dich sehr interessant sind folgende Zeilen aus /usr/lib/cron/run-crons: CDR_PROG="/usr/bin/cdrecord /usr/bin/cdwrite" if test -n "$CDR_PROG" -a -x /bin/fuser ; then /bin/fuser -s $CDR_PROG 2>/dev/null && exit 0 fi Das heißt, falls Du /bin/fuser aus dem Paket ps installiert hast, was eigentlich der Fall sein dürfte, so wird /usr/lib/cron/run-crons nicht ausgeführt, besser gesagt, die Ausführung hört hier auf, wenn irgendwo /usr/bin/cdrecord oder /usr/bin/cdwrite läuft. Das müßte eigendlich Dein Problem beheben. Hast Du ein anderes Schreibprogramm, so kannst Du diese mit vollen Pfad ja noch in CDR_PROG mit aufnehmen. Trotzdem ausgeführt werden alle Programme, die direkt in der crontab stehen. Und ich wiederhole es noch mal, es kann sein, daß es bei der 6.4 etwas anders aussieht.
Wie kann ich es vermeiden, daß die Skripte ausgeführt werden wenn cdrecord oder cdrdao aktiv bzw. das cdrdao und cdrecord während des Ausführung einen Brennvorgang starten ?
/usr/lib/cron/run-crons und damit die Programme in /etc/cron.daily sollten nicht ausgeführt werden, wenn irgendwo /usr/bin/cdrecord läuft. Sollte das bei cdrdao auch sein, so ergänze in /usr/lib/cron/run-crons die Zeile CDR_PROG="/usr/bin/cdrecord /usr/bin/cdwrite" zu CDR_PROG="/usr/bin/cdrecord /usr/bin/cdwrite /usr/bin/cdrdao" ich nehme mal an, daß cdrdao auch unter /usr/bin steht, sonst schreibe hier den richtigen Pfad hin. Überprüfe auch, ob /usr/bin/cdrecord der richtige Pfad ist. Unabhängig davon dürfte aber /etc/cron.daily/* nur kurz nach dem booten, bzw. nach Mitternacht ausgeführt werden. 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
Am Die, 30 Mai 2000 schrieb Bernd Brodesser: [tonnenweise cron-Info] Hi Bernd! Kannst Du das nicht zu einem Kapitel für SelfLinux umschreiben? Ist ja fast schon fertig ;-). Ein cron-Kapitel fehlt noch... - Matthias -- SelfLinux http://www.selflinux.de Matthias.Kleine@selflinux.de SelfLinux Beta-Release auf dem LinuxTag - am Stand der PingoS! --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Thus spake Bernd Brodesser
Ich habe SuSE 6.3 und kann daher nur dieses beschreiben. Da sich hier [...] booten, bzw. nach Mitternacht ausgeführt werden.
Bernd
Sehr gut ! -- ----------------+-------------------------------------------+ Heiko Meusel | Sonneberg / Ger | ----------------+-------------------(heme@gmx.de)-----------+ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Moin, bitte nicht schlagen: ich weiß, daß das schon öfter kam. Ich habe auch fleißig die Listenarchive gelesen, aber er druckt mir alle Seiten auf drei Blätter verteilt. Konfiguriert habe ich ihn über lprsetup mit stc740ph.upp. Hat jemand Tips? Oliver -- Dipl.-Ing. Oliver Pust Holstenhofweg 85 Universität der Bundeswehr 22043 Hamburg Institut für Strömungslehre Tel.: +49-40-6541-2167 und Strömungsmaschinen Fax: +49-441-8009916643 mailto:oliver.pust@unibw-hamburg.de http://www.unibw-hamburg.de/pfs --------------------------------------------------------------------- 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
-
heiko.degenhardt@sentec-elektronik.de
-
heme@gmx.de
-
Jan.Trippler@t-online.de
-
marc.schiffbauer@links2linux.de
-
Matthias.Kleine@selflinux.de
-
oliver.pust@UniBw-Hamburg.DE
-
s.schumacher@netcologne.de
-
thojens@gmx.de