防止目录权限更改(或解决 cronjob 问题)

防止目录权限更改(或解决 cronjob 问题)

我有一台运行 CentOS 的 HostGator 专用服务器。我在一个用户的帐户上有一个文件夹,我希望所有用户都能够具有读取访问权限,因此我们将其 chmod'd 为 755。 HG 有一个脚本可以运行并更改这些权限。我让他们禁用该脚本,但他们还更改了一个属性,以便该文件夹只能附加,从而无法删除文件。他们给了我切换该属性的命令,但我不想每次想从 FTP 删除文件时都必须打开 shell。是否有另一种方法可以使我可以像平常一样使用该目录,但防止更改权限?

编辑:经过一番反复讨论,HG 和我想出了这个还不太正确的 cronjob。我和他们有一张公开票,但有时这个很棒的社区速度更快。

if [[ "stat -c "\%a" /home/user/folder" != "755" ]]; then echo -e "Perm Changed\n" $(stat /home/user/folder) "\n" | mail -s "cron" [email protected]; chmod 755 /home/user/folder; fi

条件语句不正确,我怀疑引号不合适,但我对这种语法的了解还不够确定。有人能发现这里的错误吗?它应该检查文件夹的权限。如果不是 755,则发送电子邮件并更改权限。我得到的就好像条件始终为真。

答案1

创建一个 cron 作业来检查权限并进行更正。让它每分钟运行一次。

对于诊断和解决方法,请使用此 cron 来检查所需的权限。如果未找到,它会发送一封包含 stat 结果的电子邮件,然后更正权限。

if [[ $(stat -c "\%a" /home/user/folder) != "755" ]]; then echo -e "Perm Changed\n" $(stat /home/user/folder) "\n" | mail -s "Permission Cron" [email protected]; chmod 755 /home/user/folder; fi

相关内容