본문 바로가기

개발자는 오늘도 달립니다.

[md5sum] md5 file check 파일 체크 명령어 본문

리눅스/공통

[md5sum] md5 file check 파일 체크 명령어

✍21시간 2021. 9. 6. 17:01

md5(Message-Digest algorithm 5)라는 해시 알고리즘으로 체크섬(check sum) 값을 계산하는 명령어 입니다. 입력된 파일을 32자 문자열로 축약한 값을 출력해 줍니다.
데이터가 일부라도 변경이 되면 체크섬 값은 달라지게 되고 이는 파일 변,위조 상태를 확인 가능하게 해줍니다. 대용량의 파일을 전송하다 보면 네트워크 장애 등의 원인으로 파일에 손상이 발생하게 되는데, 이때 내가 전송받은 파일이 중간에 손실 없이 잘 다운로드 되었는지 확인하고자 할 때 내가 받은 파일의 md5 체크섬을 계산하여, 원본파일의 체크섬과 비교해서 동일성을 검증할 수 있습니다.

 

사용법

- 기본 사용

#테스트 파일 생성
$echo 'test' > myfile

$md5sum myfile
d8e8fca2dc0f896fd7cb4cb0031ba249 myfile

 

- 비교 방법 1 ( diff )

#테스트 파일 생성
$echo 'test1' > myfile1
$echo 'test2' > myfile2

$md5sum myfile1 > sum1
$md5sum myfile2 > sum2
$diff -q sum1 sum2
#출력이 없을 경우 성공 또는 Files sum1 and sum2 differ 경우 실패

$md5sum fil1 file2 file3 > mysum
$md5sum -c mysum

 

- 비교 방법 2 ( md5sum --check )

$md5sum fil1 file2 file3 > mysum
$md5sum -c mysum

 

 

다른 방식의 체크섬


$ sum myfile
12410 3

$ sum -s myfile
47909 6 myfile

$ cksum myfile
1204834076 2863 myfile

첫 번째 정수는 체크섬이고 두 번째 정수는 블록 수입니다. 그러나 보시다시피 이러한 체크섬은 작은 숫자이므로 파일이 우연히 동일한 체크섬을 가질 수 있기 때문에 신뢰할 수 없습니다. 자고로 
md5sum 을 사용하는 것이 가장 현명합니다!



Comments