хэш-значение в каталоге

Я хочу проверить целостность папки. В папке так много файлов и папок. Как рассчитать хеш-значение каталога в целом на Ubuntu. md5sum вычисляет только на уровне файла.

5
задан 20 June 2014 в 22:30

4 ответа

Для списка md5sums:

find /path/to/dir/ -type f -exec md5sum {} \;

И для полная md5 контрольная сумма :

find /path/to/dir/ -type f -exec md5sum {} \; | md5sum

Пример произвел:

b2d5d3a5e102aae48eb6ff36c602ac75  -

Уведомление , в папке с огромным размером, это может брать очень долго.

3
ответ дан 20 June 2014 в 22:30

Установите md5deep с

sudo apt-get install md5deep

команда

md5deep -r {direcotory}

, Вы получите хеш на основе всех файлов в каталоге. Можно также использовать md5deep для сравнения хешей файлов в dir

1
ответ дан 20 June 2014 в 22:30

Я создал цифровой отпечаток dir , который может использоваться для решения этого. Это создает цифровой отпечаток/хеш для всех файлов в дереве каталогов и сохраняет его в файле, также говоря Вам, если цифровой отпечаток изменился.

Это может быть установлено с:

$ brew install nejckorasa/tap/dir-fingerprint

и используемый как:

$ dir-fingerprint <path_to_directory>

с выводом:

Old     [8a7b73f9671004edd50500bc7d3f1837d841a5c086011207259eb2d183823adf]
New     [8a7b73f9671004edd50500bc7d3f1837d841a5c086011207259eb2d183823adf]
@       <path_to_directory>/.fingerprint
Diff    false

и .fingerprint файл создал

0
ответ дан 7 October 2019 в 15:29

Для этого я опубликовал пакет Python 3. Быстрое использование:

$ pip install git+https://github.com/sorgloomer/pyfstools.git@main
...
$ python -m pyfstools hash .
dir 0348bd69ad78babf85960500f5482cfc6f52d7215c5b094c20bed33a17628033    

Работает в Linux, Windows, работает с хранилищем S3 или GCS. Подробнее см. pyfstools .

0
ответ дан 6 December 2020 в 04:27

Другие вопросы по тегам:

Похожие вопросы: