`

crontab执行脚本出错

 
阅读更多
最近经常碰到关于crontab不能执行的,初步总结了有以下几个原因:
第一,脚本的原因:大多数情况下,是我们的脚本的问题,这种问题导致crontab不能执行的概率占到70%以上。因为程序执行到某一步导致crontab终止执行,如,数据库访问出错等。
第二,执行环境问题,当我们碰到第一情况下,一般都可以通过手动执行程序将问题扼杀在摇篮里,一般情况下高手是不应该犯第一种错误的。问题是当我们手动执行成功而crontab不能执行的时候,笔者碰到一次就是执行环境的问题,例如相关路径的设置问题。解决方案:在代码最前面执行 source /home/user/.bash_profile,或者source /etc/profile。还有一种情况就是日志未出现在相应的位置,这一般是使用了相对目录而没有使用绝对目录。
第三,系统时间不正确。这种问题最好理解,也是比较常见和隐蔽的问题,解决方案:date -s ********
第四,就是我们的脚本是否有可执行权限。必须保证执行脚本的用户有执行改文件的权限。
第五,crontab 守护进程死掉了。这种情况是极少发生的,但也不排除,当我们实在是找不到其他原因的时候可以用。解决方案:重启该进程。
另外,介绍大家一个关于如何查看crontab最修修改时间的方法:
进入目录/var/spool/cron/里面会有N个用户名为文件名的文件,只要建立过crontab的用户在这里都会有以该用户名为文件名的文件,该文件的最后修改时间就是该用户的的crontab的最后修改时间。

注:crontab -e 编辑后,任务会立即生效
分享到:
评论

相关推荐

    crontab与shell脚本

    建立任务crontab -e 中运行shell脚本任务。shell脚本按时间删除文件。

    脚本自动添加crontab示例

    主要介绍了脚本自动添加crontab示例,需要的朋友可以参考下

    Ubuntu crontab 定时执行php脚本文件

    Unix和Linux系统的各个发行版本基本都支持Cron,Cron /Crontab允许我们在设定的时间自动执行或定时执行某个任务,如应用程序或脚本。 许多的php程序员都可以很快完成Web应用的开发,PHP代码的调试也比PERL或C语言...

    linux crontab 定时任务脚本

    NULL 博文链接:https://caoyaojun1988-163-com.iteye.com/blog/1698192

    Linux计划任务crontab运行脚本不正确的问题

     写好的程序希望在崩溃之后能够自启动,于是利用linux的crontab功能,添加一个计划任务,每分钟执行一个脚本查看需要监控的进程是否还在,如果不在则启动之,否则不做任何事情。这么一个简单的脚本在crontab中运行...

    crontab执行时间与系统时间不一致问题解决

    cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。  service crond start //启动服务  service crond stop //关闭服务  service crond restart //重启服务  service crond reload //...

    Linux定时脚本crontab中文乱码.docx

    Linux定时脚本crontab中文乱码.docx

    Linux crontab定时执行Shell脚本需要执行特定的命令时解决思路

    1、crontab执行配置 * * * * * cd /项目目录 && ./auto_start.sh >> /log/auto.out 2、Shell脚本 #!/bin/bash #导入环境变量 export LANG=en_US.UTF-8 export JAVA_HOME=/usr/local/java export C

    shell脚本结合crontab定时导入sql文件

    项目流量过大时,数据新增变更量大,及时入库会出现同时给一张表做新增、修改,从而导致锁表,这时候可以将修改导成sql文件后入库,来缓解数据库压力

    Linux Crontab Shell脚本实现秒级定时任务的方法

    一、编写Shell脚本crontab.sh #!/bin/bash step=1 #间隔的秒数,不能大于60 for (( i = 0; i < 60; i=(i+step) )); do $(php '/home/www/php/crontab/crontab.php') sleep $step done exit 0 二、crontab -e ...

    如何使用Linux的Crontab定时执行PHP脚本的方法

    一、在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本。 每一小时执行myscript.php如下: 复制代码 代码如下: # crontab -e 00 * * * * /usr/...

    crontab实现每隔多少天执行一次脚本的两种方法

    如果是每隔多少小时,多少分运行一次程序,在crontab中可能比较好实现一些,下面是一些示例及crontab的格式说明: 具体示例: # 下午6点到早上6点,每隔15分钟执行一次脚本 0,15,30,45 18-06 * * * /bin/bash $HOME...

    执行clickhouse的sql文件的脚本,支持定时任务

    执行clickhouse的sql文件的脚本。 ~~~ 脚本执行命令如下: ~~~ sh backup-ch.sh ip port user password db chdir(clickhouse安装目录) sql_dir(sql文件路径) ~~~ 参数灵活配置。拥有7个参数。可满足多种场景。 ~~~ ...

    Linux中crontab输出重定向不生效问题的解决方法

    近期在crontab中添加了一个定时任务,该任务执行之后默认会有正常输出。为了确保在任务执行过程中的异常信息也可以捕获,方便问题定位,因此在crontab中我写了这么一条命令: 01 09 * * * cd /opdir/test/ && ./...

    shell脚本[crontab]

    这个是我的东西 下载下来方便调试 大家也可以下载是一个crontab程序

    mysql全量备份脚本可直接运行

    mysql全量备份脚本,修改脚本里面的数据库链接地址以及备份文件存放路径,直接可以运行该脚本。该脚本可配置备份文件存放天数。配合crontab定时器,可实现:定时备份数据库并只保留配置天数内的备份文件,自动删除...

    centos7 crontab 安装包

    centos7 crontab 安装包

    crontab 定时执行文件详解

    linux下crontab详解,crontab组成结构,linux下定时备份数据库shell

    crontab定时任务不执行的一些原因总结

    前言 最近在工作中遇到了一些问题,crontab定时任务居然不执行,后来我在网上找的时候发现网上主要说了这5个原因: ...比如:脚本没有x执行权限,解决方法: 增加执行权限,或者用bash abc.sh的方法

    C语言实现了crontab表达式执行时间

    实现思路详见:https://blog.csdn.net/qq_33901011/article/details/100155334 该工程用C语言实现了crontab表达式执行时间,与在线crontab执行时间计算在线工具结果一致,用在嵌入式行业里的设备定时唤醒,定时操作...

Global site tag (gtag.js) - Google Analytics