我试图用Monit来检查特定目录的权限,但我只关心它对所有用户都是可读的。 我不在乎任何其他权限(写,执行)的所有者,组或所有。 我也不在乎任何特殊的权限。
知道我不能改变这个目录的权限,并且有可能另一个pipe理员改变这些权限而不影响依赖这个目录的进程(也就是,授予或撤销对这个组的写入权限),是否可以检查在Monit中获得最低权限?
我有这个正在工作:
check directory archive path /var/home/archive/ if failed perm 0755 then alert
但我想有这样的事情:
check directory archive path /var/home/archive/ if failed perm > 444 then alert
这对我来说是失败的。 在Monit的权限检查中可以使用比较运算符吗? 如果没有,是否有任何解决方法?
您可以使用这种types的检查,运行程序并检查退出状态。
从monit手册:(注意:myscript.sh必须是最低555许可)。
“ 一个例子:
check program myscript with path "/usr/local/bin/myscript.sh" with timeout 1000 seconds if status != 0 then alert
上例的示例脚本(/usr/local/bin/myscript.sh):
#!/bin/bash echo test exit $?
“
你可以构build一个程序来做你想要的检查(可以考虑使用find命令),或者甚至使用find命令作为特定的监视程序。 你甚至可以自定义退出状态,以便不同的退出代码意味着不同的事情。