ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux定时任务crontab无法执行

2021-07-28 16:04:25  阅读:286  来源: 互联网

标签:用户 crontab cron trnuser Linux 定时 权限 crond


        今天碰到了个诡异的问题,自己写的Python脚本,手工可以执行,放在定时任务crontab中,却无法执行,下面讲述了解决过程。

1、首先看crontab的进程是否启动:/sbin/service crond status ,有Active: active (running) 字样,表明运行正常

2、使用需要执行定时任务的用户登录,执行命令:crontab -l,查看当前用户的crontab文件内容(或者直接在root用户执行:crontab -u trnuser -l  ,其中trnuser为用户名),发现一切正常。 曾经出现过用户密码过期的情况,会提示:You are not allowed to access to (crontab) because of pam configuration. 这个是用户密码过期了。

3、看脚本里面,有没有相对路径,以免脚本无法找到路径而不去执行。于是手工执行下自己的命令,发现也正常。

4、检查crond是否被限制:cat /etc/cron.deny,文件为空,正常。

5、检查crond的日志:tail -f  /var/log/cron,发现里面提示:Jul 28 10:59:01 dcr-app001 crond[26294]: (trnuser) BAD FILE MODE (/var/spool/cron/trnuser) ,初步判断或许是文件权限的原因,查看其权限,发现给的权限是774

-rwxrwxr-- 1 trnuser trnuser 435 Jul 26 20:59 trnuser

对比了root和其他用户的权限,发现这个权限太大了,修改为644解决

 

通过这个问题,找到了解决crontab不能用的办法:查看日志:/var/log/cron,根据日志提示逐步解决。

标签:用户,crontab,cron,trnuser,Linux,定时,权限,crond
来源: https://www.cnblogs.com/jintianniu/p/15070911.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有