linux添加定时任务报错 error renaming /var/spool/cron/#tmp.xxxxxxxx to /var/spool/

在给linux服务器添加定时任务的时候出现以下错误

文件格式问题

[root@xxxxxxbi2cZ ~]# crontab -e
crontab: installing new crontab
crontab: error renaming /var/spool/cron/#tmp.xxx10nxxpg.XXOl to /var/spool/cron/root
rename: Is a directory
crontab: edits left in /tmp/crontab.yZZ3z7

咱也不是专业的运维,先去百度了一下以为是权限问题,后面找了好久发现并不是这个问题权限问题的话会提示

rename: Operation not permitted

后面发现其实rename: Is a directory 这句才是关键,菜的一匹,这句话是说是一个文件夹,明眼人都知道,哈哈哈

因为之前在虚拟机中添加定时任务是可以实现的所以就去看了一下虚拟机里面的root文件发现这个root确实不是一个文件夹。。。

是啥呢 他是存放定时任务的文件是一个文件里面放的就是定时表达式 《0 */24 * * *  + 脚本路径》大概是0 */24 * * *  /usr/local/jiaoben.sh这个亚子的 怎么解决很简单 只需要吧root文件夹删除 然后重新运行crontab -e 重新添加定时任务就行了

 

权限问题

说完我的问题扩展一下如果出现rename: Operation not permitted这个错误,就是权限问题解决办法如下

解决方法:执行如下命令,修改/var/spool/cron/root权限。
chattr -i  /var/spool/cron/root,这个是清除这个目录的一些特殊限制的,然后执行 crontab -e 命令,就可以重新添加一个定时任务了

原文链接:https://blog.csdn.net/qq_29485643/article/details/89072025

参考:https://www.zhanqunfuwuqi.com/archives/3891

普通用户权限问题

参考:https://www.cnblogs.com/fivedays/p/12580850.html

 

linux cron定时器表达式校验工具

linux的cron表达式和java的还是有些区别的

参考:https://tool.lu/crontab/

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值