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

Можно ли синхронизировать два каталога linux в реальном времени?

Я хочу синхронизировать каталог внутреннего жесткого диска с внешним жестким диском.

Когда я записываю или изменяю файл на своем внутреннем жестком диске, тот же файл автоматически копируется на внешний жесткий диск ... и пока, резервная копия;)

Это будет что-то вроде RAID с внешним жестким диском.

Это возможно?

lsyncd кажется идеальным решением. он сочетает inotify (встроенная функция ядра, отслеживающая изменения файлов в деревьях каталогов) и rsync (кроссплатформенный инструмент для синхронизации файлов).

lsyncd -rsyncssh /home remotehost.org backup-home/

Цитата из github:

Lsyncd наблюдает за интерфейсом монитора событий дерева каталогов (inotify или fsevents). Он объединяет и объединяет события в течение нескольких секунд, а затем запускает один (или несколько) процессов для синхронизации изменений. По умолчанию это rsync. Таким образом, Lsyncd представляет собой легкое решение с «живым» зеркалом, которое сравнительно легко установить, не требуя новых файловых систем или блочных устройств, и не снижает производительность локальной файловой системы.

В реальном времени, насколько я знаю, есть только DRBD. Но я не думаю, что это применимо к вашей ситуации, поскольку, удаляя файл, вы удаляете его также на внешнем диске. Более легко вы можете использовать rsync и скрипт cron, который запускается каждые несколько минут.

Вы можете просто создать программный RAID1 на внутренних и внешних жестких дисках. Для системы не имеет значения, встроенный это жесткий диск или внешнее запоминающее устройство.

Но RAID - это не резерв! Что произойдет, если вы случайно удалите файл с жесткого диска? Он также удаляется на вашем внешнем «резервном» диске.

Резервные копии обычно включают более одного поколения файлов, поэтому вы можете восстановить из них случайно удаленные файлы.

Incron (как было предложено мне на этом сайте ранее в этом году).

Однако это по-прежнему не может заменить правильную процедуру резервного копирования.

Вы можете проверить chironfs http://www.furquim.org/chironfs/

git-приложение также можно использовать для этого.

git-application позволяет управлять файлами с помощью git, не проверяя содержимое файла в git. Хотя это может показаться парадоксальным, это полезно при работе с файлами большего размера, чем git может в настоящее время легко обрабатывать, будь то из-за ограничений в памяти, времени или дисковом пространстве.

Существует пошаговое руководство для быстрого ознакомления пользователей с git-приложением.