当前位置: 代码迷 >> 综合 >> linux添加定时任务报错 error renaming Is a directory和rename: Operation not permitted
  详细解决方案

linux添加定时任务报错 error renaming Is a directory和rename: Operation not permitted

热度:48   发布时间:2023-09-19 22:38:26.0

在给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/

  相关解决方案