HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials

HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials (http://www.howtoforge.com/forums/index.php)
-   General (http://www.howtoforge.com/forums/forumdisplay.php?f=25)
-   -   problem with cronjob (http://www.howtoforge.com/forums/showthread.php?t=55045)

davide.seo 22nd November 2011 00:31

problem with cronjob
 
Hi all, I have a problem configuring a cron jobs in the web panel of ispconfig3 ( Site->Cron jobs ).
In the detail, after configured a cron jobs that executes every minute, in the auth.log file I see this message:

Nov 21 20:42:12 164-44 usermod[15799]: change user 'web9' home from '/var/www/clients/client0/web9' to '/var/www/clients/client0/web9/.'
Nov 21 20:42:12 164-44 usermod[15799]: change user 'web9' shell from '/bin/false' to '/usr/sbin/jk_chrootsh'
Nov 21 20:42:12 164-44 usermod[15804]: change user 'web9' home from '/var/www/clients/client0/web9/.' to '/var/www/clients/client0/web9/./home/web9'
Nov 21 20:42:12 164-44 CRON[13244]: pam_unix(cron:session): session closed for user root
Nov 21 20:43:01 164-44 CRON[15822]: pam_unix(cron:session): session opened for user web9 by (uid=0)
Nov 21 20:43:01 164-44 CRON[15823]: pam_unix(cron:session): session opened for user root by (uid=0)
Nov 21 20:43:01 164-44 jk_chrootsh[15824]: path /var/www/clients/client0/web9/./home/web9 is not owned by user 5008
Nov 21 20:43:01 164-44 jk_chrootsh[15824]: path /var/www/clients/client0/web9/./home/web9 is not owned by group 5005
Nov 21 20:43:01 164-44 jk_chrootsh[15824]: abort, path /var/www/clients/client0/web9/./home/web9 is not owned by 5008.

In the directory I see this tree:
drwx--x--- 4 web9 client0 4096 2011-10-19 20:39 web
lrwxrwxrwx 1 root root 4 2011-11-21 20:42 lib64 -> /lib
drwxr-xr-x 3 root root 4096 2011-11-21 20:42 var
drwxr-xr-x 2 root root 4096 2011-11-21 20:42 dev
drwxr-xr-x 6 root root 4096 2011-11-21 20:42 usr
drwxr-xr-x 2 root root 4096 2011-11-21 20:42 bin
drwxr-x--x 3 root root 4096 2011-11-21 20:42 lib
drwxr-x--- 3 root root 4096 2011-11-21 20:42 home
drwxr-xr-x 6 root root 4096 2011-11-21 21:13 etc



so I decide to chown the directory home:

root@webhosting:/var/www/clients/client0/web9# chown -R web9:client0 home



after this I see in the syslog file the message:
Nov 21 20:47:01 164-44 jk_chrootsh[15980]: now entering jail /var/www/clients/client0/web9 for user web9 (5008) with arguments -c /var/www/clients/client0/web9/myscript.sh

but nothing happens on the script.
But ispconfig works well only if I set http url to wget. Could you help me ?

I show also the /etc/passwd file:

web7:x:5006:5005::/var/www/clients/client0/web7/:/bin/false
web8:x:5007:5005::/var/www/clients/client0/web8:/bin/false
web9:x:5008:5005::/var/www/clients/client0/web9/./home/web9:/usr/sbin/jk_chrootsh
web10:x:5009:5005::/var/www/clients/client0/web10:/bin/false
web11:x:5010:5005::/var/www/clients/client0/web11:/bin/false
web12:x:5011:5005::/var/www/clients/client0/web12:/bin/false



Thank you

till 22nd November 2011 09:00

Most likely you use commands in myscript.sh which are not installed inside the jail or you dont use full paths for the commands. Please post the content of myscript.sh.

davide.seo 22nd November 2011 10:34

Hi till, thank you for the reply. This is the content:

root@webhosting:/var/www/clients/client0/web9/home/web9# vi myscript.sh

/usr/bin/wget http://www.cxxxieremilano.it/xx/xxxxx/cron/cron.php
( url is clouded, wget exists in the relative path )
Calling this url from browser I should see a new parameter in the db via phpmyadmin but I don't see nothing. If I insert an echo command in the script, could I see the output in any log ?
Thanks

till 22nd November 2011 10:42

The wget application is normally not installed in the jail if you use a jailed cronjob, so this script can not work.

But why do you use this script at all? ISPConfig offers URL cronjobs for that purpose and they do exactly the same then your script. So the right solution for your problem is to create a cronjob in ISPConfig and just add:

http://www.cxxxieremilano.it/xx/xxxxx/cron/cron.php

in the command field.

davide.seo 22nd November 2011 10:55

Oh yes, I know that I can use the url in the cron job field but I used this script to test if the cron jobs works well.
You say that wget is not installed but I see it in the jail path:

root@webhosting:/var/www/clients/client0/web9/usr/bin# ls
awk clear dircolors du ftp head id less mawk nano nice php pico scp ssh tail vi vim.nox wc whoami
basename cut dirname find groups host ldd lesspipe md5sum netkit-ftp perl php5 rsync sort tac tr vim watch wget
root@webhosting:/var/www/clients/client0/web9/usr/bin#

Have you an idea to test the cron job functionality indipendently from my url ?
Thanks

davide.seo 22nd November 2011 11:06

ok...solved the problem ;)

I inserted the command: /bin/touch pippo and it created the file :)
Thank you

till 22nd November 2011 11:07

Quote:

Have you an idea to test the cron job functionality indipendently from my url ?
If you have the echo command in /var/www/clients/client0/web9/bin, then you can e.g. use such a cronjob:

echo 'test' > /tmp/test

you should find a file called test then in the tmp folder of the website. You can also verify cron by using a URL cron as I suggested, if the value in your db gets incremented, then it works.


All times are GMT +2. The time now is 18:41.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.