Linux定时任务crontab

常用命令

crontab -e 进入定时脚本,编辑后保存即立即生效


crontab -l 查看用户定时脚本


tail -f /var/log/cron 查看执行日志


service crond status 查看定时器运行状态


service crond restart 重启定时器


定时任务不执行原因

定时任务设置的格式正确,手动执行也没问题,但是定时任务就是不执行,这种情况的出现,一般是由下面几个原因造成的。

  • crond服务未启动

    需要首先排查下crond服务是否启动,可使用systemctl status crond 命令查看,如果未启动,则启动即可。

  • 脚本无权限

    如果要执行脚本无权限,通过chmod命令加上权限即可。

  • 文件路径问题

    定时任务要执行的脚本中涉及文件路径时,一定要写全局路径,不能写相对路径。

  • 环境变量问题

    定时任务要执行的脚本要用到java或其他环境变量时,需要通过source命令引入环境变量。

    注意:执行启动java程序时必须在脚本中加入引入linux服务器本身的环境变量,因为crontab的环境变量跟linux环境变量不一样的,如果不引入读取环境变量,则会导致执行失败

xml 复制代码
#!/bin/sh

source /etc/profile
source ~/.bash_profile

执行示例:

xml 复制代码
*/1 * * * * cd /home/project/zjdx/gateway/ump-mtreceiver && /bin/sh ./mtreceiver.sh stop&& sleep 10 && /bin/sh ./mtreceiver.sh start
相关推荐
用户805533698033 小时前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 小时前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF4 小时前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者2 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo2 天前
Linux系统中网线与USB网络共享冲突
linux
荣--2 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森2 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Sokach10153 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
SelectDB4 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维