定制的cron job 没有执行。啥原因?

shenghuiping2001 2011-05-03 04:39:33
定制的cron job 没有执行。啥原因? 我定制的时间是 00 4 * * 0 /shell.sh

可是在周日的早上4:00 没有执行,我单独执行: /shell.sh 是可以成功的,还有: 我crontab -l 是看到我的 job 定制进去了啊。
...全文
657 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenghuiping2001 2011-05-06
  • 打赏
  • 举报
回复
这个问题很有研究,可是还是没有解决。
shenghuiping2001 2011-05-03
  • 打赏
  • 举报
回复
谢谢大家:
说明:
1:tar -cvf finacle.tar finacle
mv -f /home/dbsrun/finacle.tar /osbak/finacle$Date.tar
是没有执行

2: ./dbsrun 是在上面/home/dbsrun的基础, shell 在其他系统上是可以成功的,环境的问题,要研究一下。

还有啥吗?
这个问题值得研究
shenghuiping2001 2011-05-03
  • 打赏
  • 举报
回复
我的 /var/log/ 下没有 cron ,我需要建一个吗?
steptodream 2011-05-03
  • 打赏
  • 举报
回复
cd ./dbsrun
--------
这句就是我举的第二个例子啊!
justkk 2011-05-03
  • 打赏
  • 举报
回复
cd ./dbsrun
把这句改为绝对路径看看
shenghuiping2001 2011-05-03
  • 打赏
  • 举报
回复
谢谢主席,你看下我的shell:

root@a05scpgapp01/>cat /sysbak/cpg-hkp-01.sh
#! /bin/sh
# Function: To keep the house keeping,
# delete the 7 days ago files.
# Author: Sheng Huiping
# Date: Apr 12 2011

# backup the file

Dir=/home/dbsrun
Date=`date +'%Y%m%d%H%M%S'`

cd $Dir

tar -cvf finacle.tar finacle
mv -f /home/dbsrun/finacle.tar /osbak/finacle$Date.tar
tar -cvf sfs.tar sfs
mv -f /home/dbsrun/sfs.tar /osbak/sfs$Date.tar
tar -cvf tomcat.tar tomcat
mv -f /home/dbsrun/tomcat.tar /osbak/tomcat$Date.tar
tar -cvf monitorcpg.tar monitorcpg
mv -f /home/dbsrun/monitorcpg.tar /osbak/monitorcpg$Date.tar

sleep 20

cd ./dbsrun

tar -cvf topcpg.tar topcpg
mv -f /home/dbsrun/dbsrun/topcpg.tar /osbak/topcpg$Date.tar
tar -cvf smpfe.tar smpfe
mv -f /home/dbsrun/dbsrun/smpfe.tar /osbak/smpfe$Date.tar
tar -cvf NCPS.tar NCPS
mv -f /home/dbsrun/dbsrun/NCPS.tar /osbak/NCPS$Date.tar
tar -cvf bepsfile.tar bepsfile
mv -f /home/dbsrun/dbsrun/bepsfile.tar /osbak/bepsfile$Date.tar

sleep 10

# Do the file house keeping

cd /osbak

find . -mtime +7 -exec rm -rf {} \;

# Check the status:

if [ $? == 0 ]; then
echo " The house keeping is okay !"
else
echo " error accur, Please check again ....."
fi

是在aix 系统下的, crontab 上的定制是:
00 4 * * 0 /sysbak/cpg-hkp-01.sh
steptodream 2011-05-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 shenghuiping2001 的回复:]

想问一下,环境变量的问题,怎么检查和排错啊?我是root啊,还有我的shell.sh 是777 的权限
[/Quote]
你补充的这些和我们所说的 毫无关系。
我们说的环境变量和路径
你回复的是用户和权限

关于环境变量我举例子 比如你的脚本里用到了java的东西 而你的java环境变量在/root/.bash_profile里
那么你的脚本里就应该加载一下环境变量(脚本一开始追加一句)source /root/.bash_profile

关于路径我举个例子 你在脚本里用了./xxxx这样的东西 结果你在当前目录下./shell.sh这样执行脚本 当然没问题 但是如果添加到了crontab里 脚本里的./xxxxx这样的就会出问题 所以你最好使用绝对路径。

另外既然没执行 你可以看看/var/log/cron里4点左右的日志 看看到底是否执行 是否有错误提示
shenghuiping2001 2011-05-03
  • 打赏
  • 举报
回复
想问一下,环境变量的问题,怎么检查和排错啊?我是root啊,还有我的shell.sh 是777 的权限
freetstar 2011-05-03
  • 打赏
  • 举报
回复
环境变量,PATH
还有脚本的具体内容,一个个排除吧
justkk 2011-05-03
  • 打赏
  • 举报
回复
在脚本的开头加一行
set -x

然后定时任务修改为00 4 * * 0 /shell.sh > /tmp/1.log
看日志信息
justkk 2011-05-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 steptodream 的回复:]
1.环境变量
2.路径问题

一般crontab不执行的原因99%就是这2个问题
[/Quote]
+1

可以在脚本中添加调试语句,看具体的错误原因
steptodream 2011-05-03
  • 打赏
  • 举报
回复
1.环境变量
2.路径问题

一般crontab不执行的原因99%就是这2个问题

1,194

社区成员

发帖
与我相关
我的任务
社区描述
该论坛主要探讨IBM AIX平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
社区管理员
  • IBM AIX社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧