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

Как безопасно синхронизировать файлы из файлового устройства на базе Windows с файловым устройством на базе Linux?

У меня есть файловый сервер Windows за корпоративной брандмауэром и файловый сервер на базе Linux в облачной установке.

Я пытался создать туннель rsync-over-ssh для файлов из файловой системы Windows в файловую систему Linux, используя rsync и ssh под Cygwin. У меня проблемы с Windows и ее NTFS без учета регистра.

У меня запущены приложения, использующие файловый фильтр Windows, который изменяет регистр файлов в файловом устройстве Windows, когда они обращаются к файлам. Пример: A.foo будет изменен на a.foo после того, как приложение прочитает файл. С точки зрения приложения Windows это нормальное поведение: A.foo и a.foo эквивалентны в файловой системе без учета регистра.

Но с точки зрения синхронизации это вызывает у меня проблемы. Процесс rsync не видит a.foo как измененный A.foo, но вместо этого видит его как совершенно новый файл, и я получаю A.foo и a.foo в файловом системе на основе Linux после того, как происходит rsync.

Есть ли лучший способ выполнить синхронизацию файлов в файловом устройстве Windows, подобную rsync, с файлами в файловом устройстве Linux, который так же безопасен, как подход rsync-over-ssh, но не имеет проблем с файлами?

Я не думаю, что rsync может игнорировать регистр. Унисон есть опция для этого (и, конечно, он может использовать ssh для транспорта). Я не знаю, запакован ли он для Cygwin; он может работать в Windows.