Назад | Перейти на главную страницу

Остановить rsync от отправки электронных писем с подтверждением

Сегодня я узнал, что у меня есть 25 ГБ / var / mail / root, полный писем от rsync. По-видимому, он отправляет себе (root @ server) электронное письмо со списком файлов каждый раз, когда я запускаю rsync, что происходит каждые несколько минут.

Это сервер Debian, и я не смог найти никаких файлов конфигурации для rsync. Итак, мои вопросы:

1- Где находится файл конфигурации для rsync в Debian? 2- Как отключить эти уведомления по электронной почте rsync?

Спасибо!

rsync не отправляет электронные письма, поэтому это делает что-то еще, связанное с rsync. Я предполагаю, что это cronjob, вызывающий rsync. Cronjob, который запускает rsync, генерирует вывод на stdout. По умолчанию cron затем отправляет этот вывод по почте root.

Итак, сначала найдите задание cron, которое запускает rsync. Места смотреть:

/etc/crontab
/etc/cron.*/
run crontab -l as root
/var/spool/cron/*

Как только вы найдете задание cron, которое вызывает rsync, попробуйте запустить его вручную из командной строки. Вы должны обнаружить, что он отображает вывод, соответствующий получаемым вами электронным письмам.

Затем вам нужно перенаправить или подавить этот вывод. В cronjob вы можете сделать что-то вроде этого:

* * * * * /usr/bin/rsync blah &>/dev/null

подавить весь вывод. В качестве альтернативы измените флаги rsync, которые вы используете, чтобы исключить вывод, или перенаправьте его в файл журнала (но не забудьте затем настроить ротацию!).

Еще одна идея для устранения неполадок: включите в этот вопрос заголовки одного из этих писем, чтобы мы могли изучить их на предмет подсказок.

Если вы запускаете rsync из cron, то rsync не отправляет вам электронную почту, а cron. Cron отправляет результаты работы cronjobs (по умолчанию) пользователю root. Ты можешь:

  • Запустите rsync без флага подробности, и в этом случае он больше не будет создавать список файлов.
  • Перенаправить stdout / stderr вашего задания cron (используя перенаправление ввода-вывода '>')

Вам нужно добавить перенаправление из вашего скрипта в cron, чтобы остановить электронную почту. Проверьте свой crontab (или системный crontab, в котором выполняется скрипт) и добавьте перенаправление, например your_rsync_script.sh > /dev/null 2>&1.

Вы также можете удалить флаг «v» (многословность) из команды rsync, чтобы подавить вывод задания cron.

Я предполагаю, что ваш rsync запущен cron.

Вам нужно будет отредактировать запись crontab и перенаправить вывод в / dev / null, например.

10 * * * * rsync -av --delete source/ destination/ >/dev/null 2>&1

Решением для меня было добавить -q (тихо) переключитесь на мою команду rsync. Поскольку я запускал rsync под своим пользователем, это было удобно, так как я все равно буду получать электронные письма, если rsync по какой-то причине выйдет из строя.