gpt4 book ai didi

unix - Cron BAD FILE MODE 与权限被拒绝

转载 作者:太空宇宙 更新时间:2023-11-03 17:24:01 26 4
gpt4 key购买 nike

我有一个 cron 作业来备份我的数据库:

➜  ~ crontab -l
@daily /etc/cron.d/pg_backup.sh

不过,设置适当的权限存在问题。

当我有:

➜  ~ ls -l /etc/cron.d/pg_backup.sh
-rwxr-xr--. 1 root root 1359 Apr 14 21:39 /etc/cron.d/pg_backup.sh

然后检查grep "pg_backup.sh"/var/log/cron,我明白了:

localhost crond[11881]: (root) BAD FILE MODE (/etc/cron.d/pg_backup.sh)

但是,当我将 pg_backup.sh 修改为:

chmod 644 pg_backup.sh

它禁用警告:

localhost CROND[11064]: (root) CMD (/etc/cron.d/pg_backup.sh)

但我明白了

➜  ~ cat /var/mail/root
# ...
/bin/sh: /etc/cron.d/pg_backup.sh: Permission denied

那么合适的文件权限是什么?

最佳答案

问题是您已经在/etc/cron.d 目录中安装了要执行的脚本。该目录用于 crontab 文件,而不是 shell 命令。 (查看该目录中的现有文件。)

crond 中检查该目录中的任何文件都不能被所有者(必须是 root)以外的任何人读取或写入,并且不可执行任何人。因此,您必须将权限更改为 600 或更严格的权限,以避免出现消息——然后,如您所见,您将无法执行脚本.

相反,将脚本放在其他地方并更新您的 crontab:

@daily /some/other/directory/pg_backup.sh

关于unix - Cron BAD FILE MODE 与权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36634759/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com