这是我想要执行的命令,但它似乎不起作用。
[mdubois@veloce ~]$ crontab -l
Autorisation refusée
You (mdubois) are not allowed to access to (crontab) because of pam configuration.
以下是我的 /etc/pam.d/crond 文件内容
#
# The PAM configuration file for the cron daemon
#
#
# No PAM authentication called, auth modules not needed
account required pam_access.so
account include password-auth
session required pam_loginuid.so
session include password-auth
auth include password-auth
我无法检测到错误,因为它没有出现在 crontab 的日志文件中
[root@veloce ~]# tail -f /var/log/cron
Jul 2 16:01:01 veloce CROND[7482]: (root) CMD (run-parts /etc/cron.hourly)
Jul 2 16:01:01 veloce run-parts(/etc/cron.hourly)[7482]: starting 0anacron
Jul 2 16:01:01 veloce run-parts(/etc/cron.hourly)[7491]: finished 0anacron
Jul 2 16:10:01 veloce CROND[8611]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Jul 2 16:20:01 veloce CROND[9940]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Jul 2 16:26:45 veloce crond[10807]: (CRON) STARTUP (1.4.4)
Jul 2 16:26:45 veloce crond[10807]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 71% if used.)
Jul 2 16:26:45 veloce crond[10807]: (CRON) INFO (running with inotify support)
Jul 2 16:26:45 veloce crond[10807]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
Jul 2 16:30:01 veloce CROND[11312]: (root) CMD (/usr/lib64/sa/sa1 1 1)
我在我的服务器上运行 RedHat 6.6 Santiago。
如果有人能帮助我就太好了。提前谢谢。
PS:我已经在 /etc/cron.allow 文件中包含了用户 ID
答案1
我遇到了同样的问题并解决了,只需直接使用用户登录(在我的情况下,使用 Putty)。
第一次登录之前,尝试更改 access.conf,但没有成功。
刚添加密码给用户并将你的 shell 更改为狂欢这解决了我的 PAM 配置错误,所以我最终可以将用户返回到非 shell 并su userInTrouble
使用root 用户我可以使用 cron 进行更改crontab -e
我正在使用 Centos 7 和 Permissive 模式下的 Selinux。
答案2
您需要通过修改文件 /etc/security/access.conf 来允许用户使用 crontab。
插入这两行
# Allow the dubois user to run cron jobs
+: dubois : cron crond :0
在上述文件中,多于这两行:
# Deny all other users access by any means.
-: ALL : ALL
这会阻止所有其他用户。之后请确保重新启动计算机。
答案3
如果你正在使用免费IPA您需要创建基于主机的访问控制 (HBAC) 规则,以允许用户访问该主机上的 crond 服务。
看定义基于主机的访问控制规则了解具体细节。
答案4
检查用户的身份验证令牌是否过期
sudo chage -l user
Last password change : Nov 29, 2018
Password expires : Feb 27, 2019
Password inactive : never
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
修改用户密码过期
sudo chage -I -1 -m 0 -M 99999 -E -1 user
希望这有效