Linux md5sum校验文件完整性

时间:2021-05-22 05:53:00

 

使用场景:  远程备份大文件,防止网络异常断开,文件备份不完整,使用md5校验其完整性。

 

1. 获取文件md5值

[root@kvm-123 gitlab]# md5sum 1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar 
bb02bd6e4da8e612274a7d71687b8976  1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar

# 写文件
[root@kvm-123 gitlab]# md5sum 1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar >git_backup.md5
[root@kvm-123 gitlab]# cat git_backup.md5 
bb02bd6e4da8e612274a7d71687b8976  1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar

 

 

2. tar包和md5文件scp到备份机

# md5文件scp到远程服务器
[root@kvm-123 gitlab]# scp git_backup.md5  root@10.17.14.188:/usr/local/src

# 备份文件传输到一半时手动中断,模拟网络异常
[root@kvm-123 gitlab]# scp 1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar root@10.17.14.188:/usr/local/src

# md5文件和备份文件必须在同一目录
[root@dev01-188 src]# ls
1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar  git_backup.md5

 

 

3. 校验文件,md5发生了变化

[root@dev01-188 src]# md5sum 1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar 
a95496aba61d6179da7ef80b7cef9d9d  1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar
[root@dev01-188 src]# cat git_backup.md5 
bb02bd6e4da8e612274a7d71687b8976  1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar


[root@dev01-188 src]# md5sum -c git_backup.md5 
1564248991_2019_07_29_11.11.0-ee_gitlab_backup.tar: 失败
md5sum: 警告:1 个校验和不匹配

[root@dev01-188 src]# echo $?
1