Есть потребность регулярно синхронизировать файлы с одной системы на другую (однонаправленно), но вместе с тем хотелось бы на системе-реципиенте раскладывать получаемые файлы в несколько ином порядке, в частности, на основе хэшей (в идеале - от содержимого), с целью более-менее равномерного распределения нагрузки на носители.
Первоначально подумал, что в простейшем случае можно обойтись традиционным rsync: в файловой системе реципиента создавать некую структуру из симлинков, указывающих на необходимые конечные места хранения, однако rsync всё ещё не умеет подобным образом использовать симлинки, а пилить такую фичу самостоятельно как-то не хочется. Но, предположим, что будет использовано какое-то другое решение для собственно синхронизации, которое может писать по симлинкам.
При быстром гуглинге выяснилось, что файловая система GlusterFS умеет распределять данные по физическим томам на основе хэша от имени файла, но такой расклад вполне годится.
Возможно, есть ещё какие-то годные решения, о которых я не знаю. Решение должно быть абсолютно прозрачно для существующего ПО, работающего с файлами. В качестве хранилища используются только локальные диски.