Я намерен синхронизировать две удаленные директории (скажем, dir1 и dir2). Таким образом, когда бы ни происходило изменение содержимого dir1 (это может быть добавление или удаление нового файла или каталога или изменение содержимого файла в каталоге), это изменение должно распространяться на dir2 и наоборот.
Наивный способ сделать это - периодически запускать rsync через cron на обеих машинах. Но в этом подходе есть ошибки:
- Может случиться, что предыдущий rsysnc не завершен, и cron выполнил rsync еще раз, пока предыдущий rysnc все еще продолжался.
- В dir1 добавляется новый файл, и перед тем, как rsync запускается на dir2, rsync на dir1 запускается, тогда добавленный файл может быть удален из dir1, поскольку его нет в dir2.
- Также это не в реальном времени.
Могут ли некоторые предложить лучший способ сделать это? Я ищу с открытым исходным кодом, который будет легче настроить и начать работу.