Cronjob über ISPconfig anlegen --> Funktion testen

#1
hallo und guten morgen,

ich möchte gern' über ISPConfig für eine Domain einen Cronjob anlegen.
Könnt Ihr mir eine Teststrategie nennen die Funktionsweise zu überprüfen?

Bis jetzt steht leider nichts in den Logfiles zu dem Cronjob.
Ich verwende das aktuelle ISPConfig auf CentOS 5.7.

Vielen Dank und beste Grüße,
Olli
 

Till

Administrator
#2
Versuch doch mal den Befehl:

/usr/bin/touch /test.txt

Wenn es ein jailed cronjob ist, dann findest Du eine leere Datei test.txt in web root, ist es ein cronjob ohne jail, findest Du eine Datei in /
 
#3
hallo till,
ich danke dir.

ich habe den befehl per panel angelegt, aber weder im webroot noch unter "/" wird eine datei angelegt.

hmm, kann es sein, dass usercronjobs nicht berücksichtigt werden unter gewissen umständen? hier ist meine aktuelle crontab:
Code:
* * * * * /usr/local/ispconfig/server/server.sh &> /dev/null
30 00 * * * /usr/local/ispconfig/server/cron_daily.sh &> /dev/null
hast du noch eine weitere idee?

beste grüße und vielen dank
 

Till

Administrator
#4
Du hast in die falsche crontab geschaut, was Du dort gepostet hast ist die root Crontab und nicht die der user. User cronjobs liegen als einzelne Dateien im Ordner /etc/cron.d/
 
#5
ich dachte das die cronjob von ispconfig ggf. unvollständig wären.

ok, danke ich habe mal nachgesehen. die cronjob werden in die datei unter /etc/cron.d/ispc_chrooted_web4

Code:
SHELL='/usr/sbin/jk_chrootsh'
15      *       *       *       *       web4    /web/lists/phplist      #domain.de
2       *       *       *       *       web4    /usr/bin/touch /domaincrontest.txt   #domain.de
das klappt also schonmal super. nur kann ich in keiner logdatei aktivitäten zu dem cronjob finden und die mit touch angelegte datei scheint es auch nicht zu geben... seltsam, oder?
 

Till

Administrator
#6
Ersetz mal bitte testweise:

SHELL='/usr/sbin/jk_chrootsh'

mit:

SHELL='/bin/bash'

um zu sehen ob es am chroot jail liegt oder am cron.

Und noch eine Frage zu Deinem ersten cronjob /web/lists/phplist, ist das ein shell script und wenn ja, ist es ausführbar und braucht es vielleicht externe Programme die vielleicht nicht im jail sind?
 
#7
hi till,
der pfad mußte hier bei mir lauten:

/bin/touch /domaincrontest.txt

aber das löste das problem leider nicht.

über einen cronjob alle 2min. wird die datei leider nicht angelegt, egal ob mit

SHELL='/usr/sbin/jk_chrootsh'

oder

SHELL='/bin/bash'

aufgerufen...

mist :-/
 

Till

Administrator
#8
Du bist Dir aber bewußt dass Dein Cronjob jeweils um 15 Minuten nach jeder vollen Stunde ausgeführt wird (also z.B. um 10:15, 11:15, 12:15 etc) und nicht etwa alle 15 Minuten?
 
#9
hallo till,
ich habe zu testzwecken mal
Code:
*       *       *       *       *       web4    /bin/touch /domaincrontest.txt
probiert, aber es funktioniert leider nicht so wie es sollte jede minute. die datei taucht einfach nicht auf...

wenn etwas in /etc/cron.d gespeichert ist, dann sollte es doch auch ausgeführt werden.

ich weiß gerade nicht weiter...
 
#10
Hi,
bei mir scheint es ein "Problem" mit
SHELL='/usr/sbin/jk_chrootsh'
und
SHELL='/bin/bash'
zu sein.

SHELL='/bin/bash' funktioniert.
Wie stelle ich ein das es bei neu angelegten Crons oder bei Änderungen genutzt wird?
Ich möchte es ja nicht immer von Hand anpassen.

Danke & Gruß
Vip
 

Till

Administrator
#12
Schau al in die Kunden Limits, dort musst Du Full cron für den Kunden erlauben. Wenn der Kunde Full Cron haben darf, dann kann man in den cronjob Einstellungen auswählen, ob ein cronjob jailed ist oder eben ein full cron.
 

Werbung

Top