[Linux] 执行crontab -e报错:/tmp/crontab.hTTt2M: Permission denied
普通用户glog执行命令crontab -e出现如下报错:# crontab -eno crontab for glog - using an empty one/tmp/crontab.idLWOi: Permission denied当用户要编辑定时任务(执行crontab -e),系统会在/tmp目录下创建一个临时文件,例如上面的crontab.idLWOi,然后在保存后重写这个文件。所以一
·
普通用户glog
执行命令crontab -e
出现如下报错:
# crontab -e
no crontab for glog - using an empty one
/tmp/crontab.idLWOi: Permission denied
当用户要编辑定时任务(执行crontab -e
),系统会在/tmp目录下创建一个临时文件,例如上面的crontab.idLWOi
,然后在保存后重写这个文件。所以一般问题就出在/tmp
目录权限上。
检查/tmp
权限(默认drwxrwxrwt.):
# ls -ld /tmp/
drwxrwxr-t. 7 root root 93 May 20 21:45 /tmp/
可以看出权限不对,还原(root
用户执行):
# chmod 1777 /tmp
必须保证/tmp
对属主,属组,其他都有读、写、执行权限。同时设置Sticky Bit
意味着只有文件所有者可以删除,否则其他用户也可以删除目录下任意文件。
最后再执行crontab -e
验证。
(另外,根目录/
权限问题也会导致这个报错,默认dr-xr-xr-x.
)
拓展知识:
Sticky Bit主要用于文件夹,以避免其他用户对文件夹内容有写权限,但也会删除该文件夹及其内容。
如果在文件夹上启用了Sticky Bit,则只有创建文件夹的所有者和root用户才能删除文件夹内容。
其他人不能删除此文件夹中的其他用户数据(Sticky Bit设置的地方)。
这是一种安全措施,以避免删除关键文件夹及其内容(子文件夹和文件),尽管其他用户具有完全权限
更多推荐
已为社区贡献2条内容
所有评论(0)