Добрых суток, ЛОР.
Есть ли готовые решения для обоюдонаправленной синхронизации каталогов, что не перетирали бы жестких ссылок? (Жесткая ссылка — это ссылка с имени файла на номер inode’а, если кто в танке.) Иначе говоря, не делали бы unlink(2)’ов кроме случаев, когда файл должен быть удален.
rsync(1) так умеет — --inplace
, но он однонаправленный.
unison(1) же ультимативно удаляет файлы, мотивируя это требованием об атомарности операций над рабочим деревом: то есть содержимое сначала копируется под временное имя, затем рабочий файл удаляется и временный файл переименовывается.
Это дело хорошее, но меня бы вполне удовлетворил и рисковый подход с записью по месту. А еще лучше — какой-нибудь компромисс, типа создания резервной копии перед началом записи по месту.
Однако после непродолжительного поиска у меня сложилось впечатление, что пригодных к использованию синхронизаторов, кроме «Унисона», и вовсе нет? Это правда?