Linux 普通用户执行crontab -e 没有权限
大家讲道理
大家讲道理 2016-11-11 13:48:12
0
2
1653

1.我切换至普通用户的时候 执行crontab -e报错

错误信息如下:

/tmp/crontab.CNTrhu/crontab: Permission denied

终端卡住

/tmp 文件权限 777


大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
代言

crontab这个程序必需要root的有效用户权限,才能写配置文件。

chmod u+s /usr/bin/crontab

这个命令的含义是将crontab程序设置为set-user-id,意思是无论用哪个用户执行该程序,shell在调用exec执行crontab程序时,会将crontab的有效用户改成crontab的owner,即root。换句话说:被提权了。于是即使此时的crontab的实际用户是普通用户,但其有效用户是root。因此,理论上这么做是可以的。设置完成后(注意那个s):

-rwsr-xr-x. 1 root root 51784 /usr/bin/crontab

另外看下sudo程序的权限为也是类似的:

---s--x--x. 1 root root 123832 /usr/bin/sudo
代言

如果是Ubuntu加sudo,不是参照楼上给权限

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!