用于监视新创建的目录的Bash脚本

时间:2017-03-20 10:32:26

标签: linux bash shell rsync nagios

任何指点或想法的人。

我有一台运行rsync的服务器,并在不同的文件夹上备份其他服务器,每天按日期创建新文件夹,例如(2017-03-20)。 我想创建一个bash脚本来检查这些备份是否已经运行,通过检查创建的文件夹,然后如果所有备份都成功,脚本将通过在另一个文件夹/ Z中写入文本文件来确认,文本文件格式为20- 17-03-20。如果任何备份失败,脚本应该退出而不是创建文件。

重点是,我会做一个nagios插件脚本,每天检查这个文本文件并每天将结果发送到Nagios。

任何想法都会受到欢迎。

1 个答案:

答案 0 :(得分:2)

首先添加epel repo -

sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

然后安装inotify-tools -

sudo yum install inotify-tools

编写一个运行的脚本和无限循环监视特定目录(您希望备份脚本生成目录的位置)。

#!/bin/sh

while true
do 

inotifywait -r -e modify,create,delete /<directory> && /bin/sh <script_confirming _backup>

done

-e标志检查上述事件。您可以根据监控要求添加事件。 -r标志将以递归方式查找所提及目录下的所有目录和子目录。