今天我发现我有一个25GB / var / mail / root,里面装满了rsync的电子邮件。 显然,每次运行一个rsync时,它都会向我自己(root @ server)发送一个包含文件列表的电子邮件,而这恰好是每隔几分钟一次。
这是一个Debian服务器,我找不到任何configuration文件的rsync。 所以我的问题是:
1- Debian上rsync的configuration文件在哪里? 2-如何禁用这些rsync电子邮件通知?
谢谢!
rsync不会发送电子邮件,所以围绕着rsync的东西就是这样做的。 我假设这是一个cronjob调用rsync。 运行rsync的cronjob在stdout上生成输出。 默认情况下,cron然后邮件输出到根。
所以首先find运行rsync的cronjob。 看的地方:
/etc/crontab /etc/cron.*/ run crontab -l as root /var/spool/cron/*
一旦find调用rsync的cronjob,请尝试在命令行上手动运行它。 你会发现它显示的输出与你收到的电子邮件相匹配。
接下来,您需要redirect或禁止输出。 在cronjob中,你可以做这样的事情:
* * * * * /usr/bin/rsync blah &>/dev/null
压制所有输出。 或者,更改您使用的rsync标志以消除输出,或将其redirect到日志文件(但不要忘记然后设置旋转!)。
另一个疑难解答的想法:在这个问题中包含这些电子邮件中的标题,以便我们可以检查他们的线索。
如果你用cron运行rsync,那么rsync不会给你发电子邮件,cron是。 Cron会通过电子邮件将cronjobs的输出发送给(默认情况下)root用户。 您可以:
您需要在cron中添加脚本的redirect来停止电子邮件。 检查您的crontab(或脚本运行的系统crontab)并添加redirect,如your_rsync_script.sh > /dev/null 2>&1
。
您也可以从rsync命令中删除“v”(详细)标记以平息cron作业的输出。
我的猜测是你的rsync是由cron运行的。
您将需要编辑您的crontab项并将输出redirect到/ dev / null例如
10 * * * * rsync -av --delete source/ destination/ >/dev/null 2>&1
我的解决scheme是添加-q
(安静)开关到我的rsync命令。 由于我在我的用户下运行rsync,这很方便,因为如果rsync由于某种原因失败,我仍然会收到电子邮件。