Zum Inhalt springen

Fehler beim Chonjob O.o


Aoshi

Empfohlene Beiträge

Hallo nochmals,

habe versucht, ein PHP-Skript per Cronjob auszuführen.

Leider erhalte ich eine Fehlermail, wenn der Chronjob durchgelaufen ist und ich versteh den einfach net. Vllt wisst ihr wo der Fehler ist:

crontab -e

PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11

SHELL=/bin/bash

MAILTO=root

HOME=/

# m     h       dom     mon     dow     user    command

*/15    *       *       *       *       root    /usr/bin/php5 cronjobs/phpDatei.php

PHP-Datei:

#!/usr/bin/php -q
<?php
/**
* Aktuallesiert den php-documentor
*
* @package cronjobs
* @version 1.0
* @category Cronjob
*/
system('phpdoc -d /webFolder/ -ti Medititel -o HTML:frames:DOM/earthli -t /PhpDocumentor/ -pp on');
?>[/PHP]

Follgende Fehlermeldung erhalte ich:

/var/mail/root: Zeile 1: From: Kommando nicht gefunden.

/var/mail/root: Zeile 2: Syntaxfehler beim unerwarteten Wort `newline'

/var/mail/root: Zeile 2: `Return-Path: <root@devel>'

Weiß jemand zufällig, wie ich den Fehler beheben kann?

lg Aoshi

Bearbeitet von Aoshi
Link zu diesem Kommentar
Auf anderen Seiten teilen

@schepp: PHP-File ist im Absoluten Pfad angegeben. Ist nur für hier was verändert worden.

@flashpixx: Habe das "/usr/bin/php" rausgelassen aber hatte leider nicht geholfen. Leider habe ich ka was du mit X-Rechte meinst...das Script wird mit root-rechte ausgeführt...also sollte es alles dürfen.

Ich sollte anmerken, das das Kommando bei crontab funktioniert, hatte es selbst so einfach getestet gehabt und der systembefehel von beim PHP-File auch funktioniert.

dennoch danke für die tipps :)

mfg Aoshi

Link zu diesem Kommentar
Auf anderen Seiten teilen

flashpixx meint das +x Flag (Execute) der Datei. Ist egal, sofern man zunächst den Interpreter ausführt, wie Du es machst ohne die Datei selbst mit ./ auszuführen.

Nimm bitte mal das "root" raus (es ist eh das crontab von root, wie ich meine) und schaue im /var/log/cron nach, was er meldet wenn er das nicht ausführen kann.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich sollte anmerken, das das Kommando bei crontab funktioniert, hatte es selbst so einfach getestet gehabt und der systembefehel von beim PHP-File auch funktioniert.

Das heißt der Cronjob läuft ordentlich durch nur das trotzdem eine Fehlermail erzeugt wird?

Erzeugt der PHP-Befehl eine STDOUT-Ausgabe auf der Konsole?

Link zu diesem Kommentar
Auf anderen Seiten teilen

1. es wurde keine Logdatei erzeugt (find ich jedenfalls nicht)

2. Jeder User kann Cronjobs anlegen und man kann auch definieren, über welchem user der cronjob laufen soll (später soll er über nen eigenen user laufen können)

3. Ich erhalte die ganze zeit nur diese Mail, die den besagten Fehler meldet

4. habe den jetzt eine echo anweisung gegeben, das wenn der cronjob durchgelaufen ist, er diese ausgeben soll

5. NEIN, die Aufgabe (in diesem fall das php file aufrufen) macht er nicht. Habe nur die Befehle (Komando des Cronjobs und die systemanweisung) manuel in die console getippt und so ausgeführt und diese funktionieren alle.

Darum habe ich in diesem fall ka wo der fehler liegt :(

lg Aoshi

Link zu diesem Kommentar
Auf anderen Seiten teilen

in /var/mail/root ist die mailbox (ka wie ich alle aufrufen kann...kann nur die letzte immer aufrufen) und da steht genau

/var/mail/root: Zeile 1: From: Kommando nicht gefunden.

/var/mail/root: Zeile 2: Syntaxfehler beim unerwarteten Wort `newline'

/var/mail/root: Zeile 2: `Return-Path: <root@devel>'

drinne...

Naja, im syslog steht da was drinne, nur eher über die mailnachrrichten:

Oct  6 07:44:02 devel sm-mta[1479]: o965i2ZV001477: to=<root@devel.GF-Netzwerk>, ctladdr=<root@devel.GF-Netzwerk> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30895, dsn=2.0.0, stat=Sent

Oct  6 07:44:02 devel sm-mta[1480]: o965i2x4001478: to=<cron@devel.GF-Netzwerk>, ctladdr=<cron@devel.GF-Netzwerk> (1002/1002), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30876, dsn=2.0.0, stat=Sent

Oct  6 07:45:01 devel CRON[1488]: (root) CMD (root^I'usr/bin/php5 /home/web/alpha/_cronjobs/phpDoc.php' )

Oct  6 07:45:01 devel CRON[1489]: (cron) CMD (cron^I/usr/bin/php5 /home/web/alpha/_cronjobs/phpDoc.php)

Oct  6 07:45:01 devel cron[1491]: (CRON) DEATH (can't open or create /var/run/crond.pid: Permission denied)

Oct  6 07:45:01 devel sendmail[1492]: o965j1LQ001492: from=cron, size=397, class=0, nrcpts=1, msgid=<201010060545.o965j1LQ001492@devel.GF-Netzwerk>, relay=cron@localhost

Oct  6 07:45:01 devel sendmail[1490]: o965j1uX001490: from=root, size=401, class=0, nrcpts=1, msgid=<201010060545.o965j1uX001490@devel.GF-Netzwerk>, relay=root@localhost

Oct  6 07:45:01 devel sm-mta[1493]: o965j1J6001493: from=<cron@devel.GF-Netzwerk>, size=667, class=0, nrcpts=1, msgid=<201010060545.o965j1LQ001492@devel.GF-Netzwerk>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]

Oct  6 07:45:01 devel sm-mta[1494]: o965j1xf001494: from=<root@devel.GF-Netzwerk>, size=671, class=0, nrcpts=1, msgid=<201010060545.o965j1uX001490@devel.GF-Netzwerk>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]

Oct  6 07:45:01 devel sendmail[1492]: o965j1LQ001492: to=cron, ctladdr=cron (1002/1002), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30397, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o965j1J6001493 Message accepted for delivery)

Oct  6 07:45:01 devel sendmail[1490]: o965j1uX001490: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30401, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o965j1xf001494 Message accepted for delivery)

Oct  6 07:45:01 devel sm-mta[1495]: o965j1J6001493: to=<cron@devel.GF-Netzwerk>, ctladdr=<cron@devel.GF-Netzwerk> (1002/1002), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30876, dsn=2.0.0, stat=Sent

Oct  6 07:45:01 devel sm-mta[1496]: o965j1xf001494: to=<root@devel.GF-Netzwerk>, ctladdr=<root@devel.GF-Netzwerk> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30895, dsn=2.0.0, stat=Sent

vllt findet ihr ja was drinne^^

lg Aoshi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hier die Zugriffsrechte davon:

d-rw-r--r--  1 root       root          4 2010-09-02 16:15 crond.pid

Habe schon follgendes Probiert:

- Ohne PATH, SHELL, MAILTO, HOME

- Anderen User verwendet

- Befehl in Hochkommas gesetzt

- Leere PHP-Datei ausgeben lassen

- Leerzeichen & Komma hinter dem Befehl

- Neue leere Zeile

- Datei-Inhaber von /var/run/crond.pid geändert (eigener User und dann wieder auf root)

- Datei mal gelöscht (erstellt danach diese neu mit einer zahl drinne die anscheinlich steigt)

Bekomme immernoch die selbe mail:

/var/mail/root: Zeile 1: From: Kommando nicht gefunden.

/var/mail/root: Zeile 2: Syntaxfehler beim unerwarteten Wort `newline'

/var/mail/root: Zeile 2: `Return-Path: <root@devel>'

Wie "Komando nicht gefunden"?

Wo steht das Wort "newline"?

usw.

lg Aoshi

Bearbeitet von Aoshi
Link zu diesem Kommentar
Auf anderen Seiten teilen

@Lupo:

Hier die antwort:

root@devel:/var/log# ps aux | grep -i cron

root       771  0.0  0.0   2376   908 ?        Ss   Sep02   0:05 cron

root     14703  0.0  0.0   2376   892 ?        Ss   Oct06   0:00 cron usr/bin/php5 /home/cronjobs/phpDoc.php,

root     23703  0.0  0.0   3332   856 pts/0    S+   00:41   0:00 grep --color=auto -i cron

Würde also erstmal deine Antwort mit ja beantworten^^

@casternj: ne, nicht das ich wüsste...bei den Prozessen ist davon jedenfalls nichts aufgelistet.

lg Aoshi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wessen cronjob ist das überhaupt? Der eines Users oder der vom root? Wenn es der eines Users ist, kannst Du natürlich nicht auf Dateien/Programme mit root-Besitz zugreifen.

Dann würde es sich empfehlen in der sudoers das Skript für den User mit nopasswd zu hinterlegen damit der Benutzer mit sudo ohne Passwortabfrage darauf zugreifen kann. Dann setzt Du im cronjob einfach sudo vor's Kommando.

Quick and Dirty wäre es, wenn der Cronjob einfach für root eingetragen wird.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...