Root的crontab由于root密码失效导致不能正常工作

数据库管理员的 172.18.20.10 和 172.18.20.25 数据库备份脚本是以 root 身份运行的,在 crontab 里跑:

126 11 * * * /root/scripts/mysql_backup_full_3306.sh > /dev/null 2>&1

但是由于 root 密码会每三个月变更一次,如果没有及时变更,会导致 root 密码失效,从而 crontab 无法正常运行。

解决方法很简单: 找到 /etc/pam.d/password-auth , 其中 account 的有四行

1account     required      pam_unix.so
2account     sufficient    pam_localuser.so
3account     sufficient    pam_succeed_if.so uid < 1000 quiet
4account     required      pam_permit.so

在前面增加两行:

1account     required      pam_access.so
2account     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
3
4account     required      pam_unix.so
5account     sufficient    pam_localuser.so
6account     sufficient    pam_succeed_if.so uid < 1000 quiet
7account     required      pam_permit.so

这样就可以了,不用重启任何服务。

pam 验证的时候,即使密码过期,crond 依然正常跑,就 ok 了。


Rsyslog的一些特殊用法
检查证书是否过期的脚本
comments powered by Disqus