最近逛论坛和问答的时候,遇见好几次求助,crontab不执行,大部分的情况是写的脚本手动执行成功,但是crontab就是不执行,下面的回复天马行空,有说检查用户权限的,有说检查系统时间的,简直无语,特立此帖扫盲,篇幅很小,都是精华。


crontab是绑定用户的

你用什么用户去创建的crontab,那么他执行的时候也是用什么用户身份. 我不想解释为什么,你看完第二条并且运行我给的命令以后就知道了.我想也没有人会用root去写个sh,然后su otheruser 去crontab -e吧?  有的话当我没说。所以和用户权限无关。至于sh文件的权限,没有执行权限手动都运行不了,但需要注意,在/etc/下有一个cron.deny文件,里面定义了那些用户不能执行crontab(默认存在但里面为空),相应的你可以手动创建dean.allow文件来保存那些用户可以执行crontab,注意:当deny和allow同时存在的时候,仅allow生效,root用户不受此限制,你把root写进去也没用.

crontab是有自己的环境变量的

环境变量是什么,我不想大篇幅的去描述,也不想复制百科,简单的理解就是你的身份证,上边有你住址年龄身份,至于查看环境变量,你可以在终端输出export来查看当前登陆bash的用户的环境变量,注意是当前用户的bash环境变量,但corntab有一套自己的环境变量,写个定时脚本

* * * * * export > /root/crontab.log

等一分钟以后去看这个文件,比较一下用户的环境变量和crontab的环境变量有什么区别,区别大了,我这里只说经常导致出错的问题

1.path  就是命令的执行路径,crontab寻找命令的路径只有/usr/bin:/bin   而用户的  echo $PATH看一下 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin,一些常用命令都在/bin或者/usr/bin下  比如ls  所以你不需要   /bin/ls 这样去执行,但是某些命令,比如ifconfig  chkconfig等在/sbin目录,不在这两个目录。当你手动运行的时候,你的path里面有这个路径,所以不需要绝对路径,不过放在crontab里面嘛,呵呵,他找不到。所以,在shell中请使用绝对路径,除非你非常肯定这几个命令在/bin或者/usr/bin下 ,如果你不清楚命令在哪,还比较懒不想写绝对路径,那么请使用whereis 或者 find 查一下你脚本中的路径在不在上述目录中

2.lang 字符集,我非常不建议使用shell去处理中文,不是说不能处理,而是很容易出错,用户的lang为utf-8而crontab为gbk或者asc的我见过不少,运行出来以后各种不可描述。

3.其它诸如 shell home user pwd等等 我需要我多说了吧

请确保你的脚本能够手动正确运行再添加crontab

本文讨论的只是手动运行正确的shell脚本,语法不明的建议先去<<shell变成从入门到精通>>,看了此帖并且修复过你的脚本后,如果你手动运行成功corn运行失败,请扔板砖.

crontab不执行扫盲贴(求置顶)相关推荐

  1. 黄河旋风你敢去吗?《材料的、找工作的》必看,求置顶啊

    你不想找一份好点的工作吗?那就就看看师兄的血泪教训吧 如果黄河来过了,后悔还来 原网页地址:http://tieba.baidu.com/p/2229569630 黄河旋风你敢去吗?<材料的.找 ...

  2. Qt 调用 Windows 接口实现窗口置顶

    前言 用 Qt 做 Windows 软件开发,有时候会用到窗口置顶功能,其实 Qt 有自带的接口来实现窗口置顶,但是效果并不太理想,比如说没办法置顶于系统标题栏,或者在全屏状态下如果有键盘事件的时候窗 ...

  3. 阅读目录(置顶)(长期科技领域知识)

    第一期:适用于数据项目的7种强大的开源工具 第二期:四种正确的微服务部署方式 第三期:开源和赚钱何去何从 第四期:Web前端和Java开发哪个薪资更高,发展前景更好? 第五期:干货总结:中级前端工程师 ...

  4. 前端取消置顶功能_短说开发日报:首页推荐频道刷新后首页置顶的数据没有加载出来的问题已修复(9.22周二)...

    短说社区论坛系统是想天软件推出的一款集社区论坛.电商商城.知识付费三大版块为一体的整合运营系统 同步支持H5.公众号.安卓.IOS.PC.多渠道小程序(微信.头条.百度.支付宝.QQ) SAAS版本. ...

  5. centos 删除crontab_Centos7 利用crontab定时执行任务及配置方法

    crond是什么? crond 和crontab是不可分割的.crontab是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于 ...

  6. 推荐+1置顶+1(分享、讨论、实现)通用软件注册功能之建立有效的软件保护机制...

    推荐+1置顶+1(分享.讨论.实现) 通用软件注册功能之建立有效的软件保护机制 众所周知,一些共享软件往往提供给使用者的是一个功能不受限制的限时使用版,在试用期内使用者可以无限制的使用软件的全部功能( ...

  7. 微信在朋友圈强行置顶视频号直播分享,引网友疯狂吐槽:又丑又烦!

    前几天,微信iOS版本进行了更新,除了对iPhone 12分辨率进行支持外,还有许多的功能也进入了灰度测试的过程,其中有关于视频号的功能居多. 微信对于视频号的功能是非常重视的,在几次大的更新中,视频 ...

  8. 前端取消置顶功能_双十一来临,怎么让便签app记录的清空购物车便签内容置顶显示? - 学显...

    其实,作为一款多功能便签备忘录软件工具,敬业签还支持对便签内容执行"置顶"操作,以便突出该备忘录内容的重要性呢!所以,需要清空购物车的小伙伴,赶快对"清空购物车" ...

  9. ubuntu firefox不能播放MP4,ubuntu Firefox flash 浏览器全屏置顶

    ubuntu默认安装的Firefox是不能播放MP4的, sudo apt-get install gnome-mplayer ubuntu默认安装的Firefox是不能播放flash的, sudo ...

最新文章

  1. 多数编程语言里的0.1+0.2≠0.3?
  2. RDKit | 化合物描述符向量化及部分结构检索
  3. javascript操作表单
  4. 单用户模式迁移home家目录
  5. 自定义组件 点击空白处隐藏
  6. packed record与record区别
  7. opencv中imgproc库中函数详解(1)
  8. 云计算与 OpenStack - 每天5分钟玩转 OpenStack(14)
  9. 25大技术主题向您发出最后一次约【惠】邀请
  10. ComponentOne FlexGrid for WinForms 中文版快速入门(9)—过滤
  11. Keras深度学习框架配置
  12. 一个程序员的成长的六个阶段(转帖)
  13. 廖雪峰Git教程:远程仓库
  14. 2022全新二开影视源码app源码完整版
  15. 如何卸载 Adobe Creative Cloud 桌面应用程序
  16. Halcon教程第一讲 读取多张图片
  17. SPSS数据分析之多选题定义
  18. 取消u盘写保护 u盘量产教程(无数尝试后的终极解决办法)
  19. 京东API item_search - 按关键字搜索商品
  20. python文本可读性

热门文章

  1. 做一个有趣会赚钱的前端
  2. redis安装与启动客户端(redis篇一)
  3. delete 语句解析与执行
  4. 来谈谈SEM及SEO优化
  5. 个人微信小程序和企业微信小程序的区别
  6. [儿童益智玩具]怎么玩?儿科学会给出了10条建议
  7. Activiti工作流浅析
  8. ubuntu——火狐浏览器报错:代理服务器拒绝连接
  9. 前端代码编写(边写边看效果,实时更新测试网)
  10. CWE-124: Buffer Underwrite ('Buffer Underflow') (缓冲区下界之下写入)