Wolle Geschrieben 12. September 2001 Teilen Geschrieben 12. September 2001 Hi, ich versuche gerade einen Cronjob zu erstellen. Ich habe ein Shellscript geschrieben, das ich über einen Cronjob aufrufen will. Das Script verschickt per Mutt eine Mail mit einer Datei im Attachment, löscht dann diese Datei und bootet den Rechner neu. Wenn ich das Script von Hand aufrufe läuft es einwandfrei. Beim Aufruf über die Crontab bekomme ich immer die Meldungen Command not found als Mail an root. Ich hab es mit absoluten Pfaden, nur dem Dateinamen, mit ./ vornedran und ohne probiert. Immer das gleiche Ergebnis. Auf dem Script sind volle Rechte (777). Ich hab auch schon versucht das Script in verschiedene Pfade zu packen (in /usr/sbin, /usr/bin und sogar in /). Der Aufruf sieht im Moment so aus: 12 * * * * root /usr/sbin/mailsenden Ich benutze Suse 7.1. Hat einer eine Idee woran das liegen könnte?? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
multimac Geschrieben 12. September 2001 Teilen Geschrieben 12. September 2001 Hast Du den absoluten Pfad zur Shell und zu Mutt in dem Shellskript gesetzt ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DevilDawn Geschrieben 12. September 2001 Teilen Geschrieben 12. September 2001 Bedenke, das die Umgebung in der cron abläuft, nicht deiner Arbeitsumgebung entspricht. Setz im Script vorher Pfade oder benutze nur absolute Pfade, auch für erstellte Dateien (die auf generell nach /var/tmp/ gehören, mit mktemp erstellt werden sollten und nach gebrauch gelöscht werden sollten). Ein Auswertescript würde z.B. dieses machen: #!bin/sh LOG=/var/log/somelog PARSER=/usr/local/bin/someparser OPTS="-1 -l 12 -T foo" MAILX=/usr/bin/mailx TMPFILE=`mktmp /var/tmp/mail.XXXXXX` || exit 1 # Use Parser on Log and pipe output nach /var/tmp/ ${PARSER} ${OPTS} ${LOG} > ${TMPFILE} # Send parsed log as mail ${MAILX} -s "Logauswertung" user@host < ${TMPFILE} # delete tempfile and exit rm -f ${TMPFILE} exit 0 Mach dir einfach mal ein Cronjob der nur "env" ausführt, dann siehst du welche Bedingungen in deiner cron-umgebung existieren. <FONT COLOR="#a62a2a" SIZE="1">[ 12. September 2001 23:14: Beitrag 1 mal editiert, zuletzt von DevilDawn ]</font> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 13. September 2001 Autor Teilen Geschrieben 13. September 2001 Hmmm... Die Pfade im Script hatte ich alle absolut angegeben, bis auf den zu Mutt. Jetzt hab ich den Pfad zu Mutt auch absolut drin, gleiches Ergebnis. @Devil: Ich erstelle keine temp-Datei, sondern verschicke die Orginal Logg-Datei, die nach dem verschicken dann auch gelöscht wird (aus Platzgründen). Irgendwie glaube ich inzwischen, das da irgendwo was ganz schwer verbogen ist Ich bekomme jetzt auch bei den Cron-Jobs die standartmäßig drin sind (z.B. test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons) die Meldung command not found Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
souse Geschrieben 13. September 2001 Teilen Geschrieben 13. September 2001 hmm, ich hatte schon div. probleme mit dem cron, das er die crontab nicht neu ausliest: /sbin/init.d/cron restart Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
multimac Geschrieben 13. September 2001 Teilen Geschrieben 13. September 2001 <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Irgendwie glaube ich inzwischen, das da irgendwo was ganz schwer verbogen ist Ich bekomme jetzt auch bei den Cron-Jobs die standartmäßig drin sind (z.B. test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons) die Meldung command not found Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
multimac Geschrieben 13. September 2001 Teilen Geschrieben 13. September 2001 <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>12 * * * * root /usr/sbin/mailsenden Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 14. September 2001 Autor Teilen Geschrieben 14. September 2001 @souse: Daran liegt's nicht, ich hatte den Cron nach jeder Änderung neu gestartet. <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von multimac: <STRONG> Ggf. hilft auch das Setzen von Umgebungsvariablen in /etc/crontab (könnte auf Deinem (Linux? BSD? Anderes?) System anders sein) ala SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin</STRONG> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.