MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 数据库 / 正文

关于linux系统普通用户无法执行crontab解决思路总结

2024-11-26 17:41 huorong 数据库 6 ℃ 0 评论

概述

最近在用oracle用户添加备份计划任务(crontab -e),提示:You (oracle) are not allowed to access to (crontab) because of pam configura,考虑到在某些环境还是比较常见的,所以简单记录下~


解决思路如下:


1、查看/bin/crontab的SSID位是否标记S

可以发现已经标记S,没有问题


2、检查cron

定时任务没特殊设置


说明: 只有cron.deny 文件,但文件无内容,不存在限制(如果存在cron.allow文件,以cron.allow文件优先;果如cron.allow和cron.deny都存在,以cron.allow文件优先;如果只有cron.deny 文件,只能以cron.deny 文件为准)



3、检查PAM模块

cat /etc/pam.d/crond,文件配置正常




4、查看系统日志

cat /var/log/secure

可以看到日志中报错:PAM unable to dlopen(/usr/lib64/security/pam_tally.so): /usr/lib64/security/pam_tally.so: cannot open shared object file: No such file or director

其实这个是因为没有/lib64/security/pam_tally.so共享对象文件

解决 办法:

将配置文件中的pam_tally.so修改为pam_tally2.so

vim /etc/pam.d/system-auth
auth required pam_tally2.so deny=5 unlock_time=600
account required pam_tally2.so



5、查看oracle用户密码过期为90天

chage -M -l 99999 oracle

在修改oracle密码永不过期后就可以执行crontab -e 命令了




后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下~

Tags:oracle 表 用户

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言