Hallo Sportfreund, jetzt habe ich den Thread schon entsorgt und vielleicht wiederhole ich eine bereits schon gegebene Antwort.
(Übrigens, der Hinweis mit dem at(1) nicht ganz richtig, at verwendet
eine komplett andere Umgebung! at liest beim Aufruf (also wenn Du den
Job planst) Deine aktuelle Umgebung ein und sogar das aktuelle
Verzeichnis. - Cron macht nichts dergleichen.
Du hattest einen Script in /etc/cron.daily abgelegt und hoffst, daß der
irgendwann ausgeführt wird?
- korrekte Permissions (xr) für root?
- Filename so, daß run-parts ihn aktzeptiert?
- werden die anderen cron.daily liegenden Scripte ausgeführt?
- findest Du im syslog etwas, wo Cron behauptet, er hätte
- Kannst Du am frühen Morgen eine access-Time feststellen, die mit
der Zeit für cron.daily korreliert? (stat
/etc/cron.daily/mysqlbackup)
Nehmen wir mal an, der Script wird ausgeführt, funktioniert aus
verschiedenen Gründen aber nicht. Cron sollte eventuell entstandene
Ausgaben an root schicken, per Mail. Mail dort geguckt?
Mit dem Holzhammer ginge auch etwa folgendes, Du könntest Deinen Script
etwas modifizieren:
#! /bin/bash
exec &>/tmp/log
set -x
…
Und dann am Morgen mal gucken, was da drin steht. Beliebte Kandidaten
für Probleme sind neben PATH, SHELL, working directory, auch noch diese
Lokalisierungsvariablen LANG, LC_*
Ich habe in meinen Scripten (fast) immer am Anfang ein
unset CDPATH LANG ${!LC_*}
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin
Dein nächtlicher Script hat nichts, aber auch gar nichts von der
Umgebung, die Du als root gewohnt bist! Normalerweise. Das könnte sich
aber ändern, wenn Du z.B. angemeldet bist, und Cron neu startest, einige
dieser Daemons initialisieren dann die Umgebung nicht neu, sondern
nehmen die, die im Augenblick des Starts da war. (da fangen dann
fetchmails plötzlich an, deutsche Fehlermeldungen in den Syslog zu
schreiben, usw. usf.)
Und wenn dann alles funktioniert, empfehle ich Dir ein
#! /bin/bash -e
als erste Zeile. Es kommt auf das -e an! Vielleicht funktioniert es dann
wieder nicht, aber in der Regel wirst Du darüber dann froh sein.
--
Heiko :: dresden : linux : SCHLITTERMANN.de
GPG Key 48D0359B : 3061 CFBF 2D88 F034 E8D2 7E92 EE4E AC98 48D0 359B
signature.asc
Description: Digital signature
_______________________________________________ Lug-dd maillist - [email protected] https://ssl.schlittermann.de/mailman/listinfo/lug-dd
