`

crontab无法正常运行的原因分析

 
阅读更多
一、solariscrontab不执行问题解决
1.先杀掉/usr/sbin/cron,可以用ps -ef|grep cron 得出id号
2. rm /etc/cron.d/fifo
3. /usr/sbin/cron

二、SUSE crontab不执行问题探讨:

我基本上认定是crontab运行程序时,它没有读当前用户的.profile,解决方法----

1.如果有root权限可以这样来修改crontab:
750 * * * su - user -c /channel/app/back/scripts/serv_cust.sh >/channel/app/cron.out

2.也可以在serv_cust.sh中加上
. $HOME/.profile
以获取.profile中定义的各种环境变量
3.也可能是权限问题.方法:普通用户须被列在/etc/cron.allow中(如果该文件存在),或不被列在/etc/cron.deny中。检查oracle用户是否在上述文件中。

4.你需要在执行程序前先配置oracle的环境参数,如:$ORACLE_HOME等等;
如下,先写一个脚本文件test.sh

#!/bin/sh
ORACLE_HOME=/home/oracle
exportORACLE_HOME
......
/usr/users/oracle/test1
然后再写crontab脚本:
4 * * * /usr/users/oracle/test.sh
就可以了。

没登录的后台运行程序,没有.profile里的环境变量

也许是oracle的环境变量。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics