В кратце в чём суть:
- Есть большие (от 1 до 100гб) файлы на множестве машин.
- Есть желание хранить их инкрементальные бэкапы.
- Поскольку в файлах есть личные данные - их нужно шифровать на стороне клиента. (примечание - шифрование должно быть блочным несвязным и не использовать salt).
- Всё это должна обслуживать одна машина с хорошим каналом и большим количеством хардов (вычислений на ней - минимум).
- Переливаться по сети должны только изменившиеся данные.
В субботу искал подобные решения, ничего стоящего не нашёл. Всё уходит в rsync и обёртки вокруг него, которые не умеют шифровать с nosalt. Пока что написал прототип такого копирования на bash, на полуторагиговом ISO образе в котором изменилось по 6-7 файлов в 5 tar.gz архивах получилось сэкономить при синхронизации около 40% переливаемого объёма. Вот сейчас думаю, имеет смысл это допиливать и потом переписывать на C/Python для скорости или может я абсолютно не умею пользоваться гуглом и кто-то уже делал готовые решения?