首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查Unix/Linux的文件完整性

检查Unix/Linux的文件完整性
EN

Stack Overflow用户
提问于 2012-11-30 12:58:36
回答 5查看 19K关注 0票数 5

我不知道如何在Unix/Linux上用哈希算法,md5来检查文件的完整性。我专注于开发bash脚本来检查Linux上每个特定文件夹(也包含子文件夹)中所需文件的md5。那么我的问题是有没有可能这样做?背景是在对系统进行更改之前检查文件的完整性。

谢谢你的建议,Ponomy

EN

回答 5

Stack Overflow用户

发布于 2012-11-30 13:01:19

这很容易做到!使用md5sum命令。

票数 5
EN

Stack Overflow用户

发布于 2018-01-03 10:44:25

md5sum不是递归的,这是在他的问题中特别要求的。也许find /path/to/files -type f -print0 | xargs -0 md5sum > checksum.md5就足够了,但我更喜欢hashdeep工具。

使用md5deep -r /path/to/files > checksum.md5。然后,您可以使用md5sum -c checksum.md5 | grep -v ' OK$'检查任何更改。当然,这不会检测到任何新添加的文件。如果你是偏执狂,你也可以使用sha256deep和sha256sum。;-)

您也可以使用md5deep -rx checksum.md5 /path/to/files进行检查。或者,您可以先使用hashdeep -r /path/to/files > hashes,然后使用hashdeep -ravvk hashes /path/to/files来“审计”文件。我并不真正喜欢hashdeep工具进行检查和审计的方式,但您可能会认为它很棒,所以就这样吧。:-)

当然,所有这些都不会检查文件元数据(时间戳、所有权、权限等)。但接下来你会遇到像TripWire或AIDE这样的事情。

票数 2
EN

Stack Overflow用户

发布于 2018-01-03 14:36:48

这是我的脚本检查完整性的所有文件从2个目录,与md5sum。您可以更改要检查的目录名称:

代码语言:javascript
运行
复制
#!/bin/sh

cd persediaan
find . -exec md5 {} \; | sort > /tmp/file1_md5_sort
cd -
cd tmp/persediaan
find . -exec md5 {} \; | grep -v Tag | sort > /tmp/file2_md5_sort
cd -
diff /tmp/file1_md5_sort /tmp/file2_md5_sort | grep -v CVS | grep MD5
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13639276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档