Навайбкодил файловую систему

с дедупликацией файлов. На FUSE, естественно.

Идея такая: при создании или изменении файла считается его контрольная сумма, затем в специально выделенном каталоге ищется файл с таким именем (контрольная сумма вместо имени). Если такой файл есть, то оригинальный файл заменяется хардлинком на найденный, если такого файла нет, то он создается. Поиск хэша файла таким образом возлагается на механизм каталогов ФС (обычно там btree).

ФС монтируется поверх существующего каталога и в нем сразу появляется дедупликация файлов. Если ФС отмонтируется, то все файлы остаются на своих местах, ничего не пропадает и занятое место не увеличивается. Ничего страшного не произойдет даже если удалить служебный каталог.

В комплекте так же есть утилита для дедупликации существующего каталога. Бонусом идут встроенные метрики в формате prometheus

https://github.com/shadowlamer/dedupfs