Проект Precizer развивается более двух лет и позиционируется как небольшая, быстрая и удобная CLI-утилита для задач, где обычного сравнения метаданных файлов уже недостаточно. Программа обходит дерево каталогов, вычисляет контрольные суммы файлов (SHA512) и сохраняет сведения в SQLite-базу. После этого базы, созданные для разных источников данных, можно сравнить между собой и получить список отсутствующих файлов, лишних файлов и объектов с несовпадающими контрольными суммами.
Основной сценарий использования связан с проверкой результатов синхронизации больших хранилищ, резервных копий и disaster recovery-копий. В отличие от разового запуска утилит, пересчитывающих контрольные суммы с нуля, Precizer сохраняет состояние между запусками и позволяет возобновлять длительные операции после прерывания. Это особенно важно для файловых деревьев с большим числом объектов или объёмами, измеряемыми терабайтами и петабайтами, где повторный полный проход по данным после случайной остановки может превратиться в задачу, у которой нет хорошего практического решения.
Также отмечена возможность применения Precizer в качестве инструмента контроля безопасности для выявления несанкционированных изменений файлов, в том числе в случаях, когда метаданные не позволяют заметить подмену содержимого.
Для обновления ранее созданной базы предусмотрен режим «—update», позволяющий добавлять новые файлы, удалять записи об исчезнувших объектах и пересчитывать контрольные суммы изменённых файлов. Для ограничения области проверки и сравнения поддерживаются фильтры путей через «—ignore» и «—include».
Готовые архивы Precizer 0.16.0 доступны для Linux x86_64, Linux AArch64, macOS arm64 и Windows x64. Для Linux предлагаются переносимые статически собранные ELF-файлы, не привязанные к конкретному дистрибутиву. Для сборки из исходных текстов можно использовать обычный Makefile или подготовленные Docker-окружения для AlmaLinux, Alpine, Arch, Debian, Gentoo, Rocky и Ubuntu.
В составе релиза подготовлены два варианта Windows-сборки: ZIP-архив с исполняемым файлом и необходимой DLL-зависимостью, а также переносимый EXE-файл без внешних зависимостей. Windows-сборки пока не имеют цифровой подписи издателя. Кроме того, переносимый EXE-файл может вызывать предупреждения Microsoft Defender, что типично для ранних неподписанных бинарных файлов, собранных вне привычной цепочки поставки Windows-приложений.
Источник: http://www.opennet.ru/opennews/art.shtml?num=65823
