Linux 系统里面计划任务,crontab 没有如期执行这是运维工作中比较常见的一种故障了。

下面结合最近部署自动脚本不执行问题排查步骤:

1、检查 crontab 服务是否正常

[dmdba@test_db ~]$ ps -aux|grep cron

这里发现服务是正常运行。如果里面没有发现执行记录,那么可以启动下这个服务:service crond start

2、查看用户邮件

其实,最直接最有效的就是查看执行日志了,结合 crontab 执行记录,以及 crontab 执行出错后的系统邮件,一般都能彻底找到失败的原因了!

当然,要记住在 crontab 中如果屏蔽了错误信息,就不会发邮件了。

[dmdba@test_db ~]$ cat /var/spool/mail/dmdba



这里,我发现了脚本执行报错了:



原因还是环境变量问题,找到脚本export加上缺失的环境变量即可。

3、检查脚本的执行权限

一般来说,在 crontab 中建议使用 sh 或 bash 来执行 shell 脚本,避免因脚本文件的执行权限丢失导致任务失败。

当然,最直接检查就是人工直接复制 crontab -l 里面的命令行测试结果。

[dmdba@test_db script]$ crontab -l
0 2 * * * sh /home/dmdba/dmbackup/script/backup.sh

4、检查脚本需要用到的变量

和上文一样,通常来说从 crontab 里面执行的脚本和人工执行的环境变量是不一样的,所以对于一些系统变量,建议写绝对路径,或使用 witch 动态获取,

比如  sudo_bin=$(which sudo) 就能拿到 sudo 在当前系统的绝对路径了。

Linux crontab不执行的更多相关文章

  1. linux crontab定时执行

    #利用crontab定时执行url研究了两种简单方式#一利用lynx访问url yum install lynxservice crond startcrontab -einsert键* * * * ...

  2. Linux crontab定时执行任务 命令格式与详细例子

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  3. Linux crontab定时执行任务命令格式与详细例子

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  4. Linux crontab定时执行任务 命令格式与详细例子(转)

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  5. linux crontab定时执行shell脚本

    linux下使用crontab命令被用来提交和管理用户的需要周期性执行的任务,示例如下:crontab -e 编辑周期任务30 21 * * * /etc/init.d/smb restart 每晚的 ...

  6. linux crontab 定时任务执行

    cron机制        cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制 crontab参数        -u:这个参数可以让我们去编辑其他 ...

  7. Linux crontab定时执行任务

    1.设置定时任务的命令是crontab -e首次使用crontab的时候会让你选择编辑工具,看个人喜好了.选择一个即可.如果以后想换默认编辑工具,可以按照下面的提示运行命令"select-e ...

  8. [linux]crontab 命令执行问题

    在服务器上设置了一个R脚本的crontab任务,死活不执行.在网上搜了很久,终于解决了. 这里主要说一下crontab异常时,该如何排查. 假设cron命令为:* * * * Rscript /you ...

  9. linux crontab 实现每秒执行(转)

    linux crontab 命令,最小的执行时间是一分钟.如需要在小于一分钟内重复执行,可以有两个方法实现. 1.使用延时来实现每N秒执行 创建一个php做执行动作,非常简单,就是把当前时间写入log ...

  10. crontab(linux下定时执行任务命令)

    在linux在可以通过在脚本里(列如sh)写如日常需要进行的操作,然后通过crontab定时运行脚本. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的 ...

随机推荐

  1. [转帖]CentOS7上systemctl的使用

    https://www.cnblogs.com/yeyuzhuanjia/p/14676182.html CentOS 7.x开始,CentOS开始使用systemd服务来代替daemon,原来管理系 ...

  2. [转帖]【mmap】深度分析mmap:是什么 为什么 怎么用 性能总结

    https://blog.csdn.net/bandaoyu/article/details/106750990 目录 有什么用? 1.文件映射 2.分配内存(匿名文件映射) mmap基础概念 mma ...

  3. [转帖]linux--Segfault详解

    linux--Segfault详解 1 简介 1.1 段错误的定义 1.2 痛点 2 知识点 2.1 报错内容 2.2 error number 3 排除步骤(借助汇编) 3.1 日志确定错误类型 3 ...

  4. [转帖]从DDR到DDR4,内存核心频率基本上就没太大的进步!

    https://zhuanlan.zhihu.com/p/84194049 从2001年DDR内存面世以来发展到2019年的今天,已经走过了DDR.DDR2.DDR3.DDR4四个大的规格时代了(DD ...

  5. Harbor 简要安装说明

    Harbor 简要安装说明 下载最新的离线安装文件 链接:https://pan.baidu.com/s/1ZEjgnI3YmhsdVOm7h7SWcQ 提取码:GSNB 复制这段内容后打开百度网盘手 ...

  6. redis 6源码解析之 object

    redis对象作为redis存储的基本单元,对应redisDb->dict 中的dictEntry->key和dictEntry->val. 更全面的图谱 源码解析参见:object ...

  7. rust入坑指南之ownership

    作者:京东零售 王梦津 I. 前言 Rust,不少程序员的白月光,这里我们简单罗列一些大牛的评价. Linus Torvalds:Linux内核的创始人,对Rust的评价是:"Rust的主要 ...

  8. React中useEffect、useCallBack、useLayoutEffect

    在函数中使用定时器 import { useEffect, useState } from "react"; export default function Funcom() { ...

  9. Python Coroutine 池化实现

    Python Coroutine 池化实现 池化介绍 在当今计算机科学和软件工程的领域中,池化技术如线程池.连接池和对象池等已经成为优化资源利用率和提高软件性能的重要工具.然而,在 Python 的协 ...

  10. 特定领域知识图谱融合方案:文本匹配算法之预训练Simbert、ERNIE-Gram单塔模型等诸多模型【三】

    特定领域知识图谱融合方案:文本匹配算法之预训练模型SimBert.ERNIE-Gram 文本匹配任务在自然语言处理中是非常重要的基础任务之一,一般研究两段文本之间的关系.有很多应用场景:如信息检索.问 ...