普通用户crontab oracle,普通用户无法使用crontab故障排除

今天发现普通用户oracle无法使用crontab,无权限编辑crontab内容,详细报错如下:

[oracle@SJYD-CS-2 ~]$ crontab -e

#sync table

35 10 * * * /u01/app/yangcj/sync.sh

10 15 * * * /home/oracle/test.sh

~

"crontab.XXXXCl0bLz" 3L, 82C written

crontab: installing new crontab

cron/tmp.XXXXfNm9ah: Permission denied

crontab: edits left in /tmp/crontab.XXXXCl0bLz

[oracle@SJYD-CS-2 ~]$

检查发现是 /usr/bin/crontab 的属性有问题,没有给予它s属性,

因此低权限有误就无法使用crontab来往/var/spool/cron下写入文件

(即使把/var/spool/cron的权限设置为777,也一样会提示 chown:没有权限操作)

解决办法:

进入目录/var/spool/cron/

[root@SJYD-CS-2 cron]# ls `which crontab` -al

-rwxrwxrwx 1 root root 208806 Jan 30 2009 /usr/bin/crontab

[root@SJYD-CS-2 cron]# chmod u+s /usr/bin/crontab

[root@SJYD-CS-2 cron]# su oracle

[oracle@SJYD-CS-2 ~]$ crontab -l

#sync table

35 10 * * * /u01/app/yangcj/sync.sh

0 13 * * * /home/oracle/test.sh

s权限是 sid ,和passwd 一样,虽然普通用户没有passwd 的读、写、执行权限,但是加入了sid,就可以继承该文件拥有者的权限,比如写 /etc/shadow 。

crontab也是一样

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值