리눅스 명령어 · 2 min read · Sep 20, 2025
리눅스 md5sum 명령어 초보자를 위한 설명 (5가지 예제)

파일을 다운로드할 때, 특히 웹사이트에서 다운로드한 파일이나 토렌트 프로토콜 또는 FTP 서버를 통해 설치하는 파일은 다운로드가 유효한지 확인하는 것이 좋습니다. 웹사이트는 종종 다운로드가 올바르게 완료되었는지 확인하기 위해 각 파일에 대한 해시 값을 표시합니다. 이 문서에서는 다운로드를 검증하는 데 사용할 수 있는 md5sum 명령어에 대해 설명합니다. sha1sum, sha256sum, sha512sum의 세 가지 다른 유틸리티도 md5sum과 동일한 방식으로 작동합니다. 이 튜토리얼은 모든 주요 리눅스 배포판과 호환됩니다.
리눅스 md5sum 명령어
md5sum 명령어는 MD5 알고리즘을 사용하여 주어진 파일의 32자(128비트) 체크섬을 출력합니다. 다음은 이 명령줄 도구의 명령 구문입니다:
md5sum [OPTION]... [FILE]...그리고 md5sum의 매뉴얼 페이지는 다음과 같이 설명합니다:
MD5 (128-bit) 체크섬을 출력하거나 확인합니다.다음의 Q&A 스타일의 예제는 md5sum의 기본 사용법에 대한 더 나은 아이디어를 제공합니다.
참고: 예제에서는 file1.txt, file2.txt, file3.txt라는 세 개의 파일을 입력 파일로 사용합니다. 각 파일의 텍스트는 아래에 나열되어 있습니다.
file1.txt:
hi
hello
how are you
thanks.file2.txt:
hi
hello to you
I am fine
Your welcome!file3.txt:
hallo
Guten Tag
Wie geht es dir
Danke.Q1. 해시 값을 어떻게 표시하나요?
옵션 없이 명령어를 사용하여 해시 값과 파일 이름을 표시합니다.
md5sum file1.txt이 명령어가 우리 시스템에서 생성한 출력은 다음과 같습니다:
[Documents]$ md5sum file1.txt
1ff38cc592c4c5d0c8e3ca38be8f1eb1 file1.txt
[Documents]$출력은 –tag 옵션을 사용하여 BSD 스타일 형식으로도 표시할 수 있습니다.
md5sum --tag file1.txt[Documents]$ md5sum --tag file1.txt
MD5 (file1.txt) = 1ff38cc592c4c5d0c8e3ca38be8f1eb1
[Documents]$Q2. 여러 파일을 한 번에 검증하는 방법은?
md5sum 명령어는 여러 파일을 한 번에 검증할 수 있습니다. 우리는 file2.txt와 file3.txt를 추가하여 기능을 시연할 것입니다.
해시를 파일에 기록하면 해당 파일을 사용하여 파일이 변경되었는지 확인할 수 있습니다. 여기서는 파일의 해시를 hashes라는 파일에 기록한 다음, 이를 사용하여 파일이 변경되지 않았는지 검증합니다.
md5sum file1.txt file2.txt file3.txt > hashes
md5sum --check hashes[Documents]$ md5sum file1.txt file2.txt file3.txt > hashes
[Documents]$ md5sum --check hashes
file1.txt: OK
file2.txt: OK
file3.txt: OK
[Documents]$ 이제 file3.txt를 변경하여 파일 끝에 단일 느낌표를 추가하고 명령어를 다시 실행합니다.
echo "!" >> file3.txt
md5sum --check hashes[Documents]$ md5sum --check hashes
file1.txt: OK
file2.txt: OK
file3.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
[Documents]$ file3.txt가 변경된 것을 확인할 수 있습니다.
Q3. 수정된 파일만 표시하는 방법은?
확인할 파일이 많다면 변경된 파일만 표시하고 싶을 수 있습니다. “–quiet” 옵션을 사용하면 md5sum은 변경된 파일만 나열합니다.
md5sum --quiet --check hashes[Documents]$ md5sum --quiet --check hashes
file3.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
[Documents]$Q4. 스크립트에서 변경 사항을 감지하는 방법은?
스크립트에서 md5sum을 사용하고 싶을 수 있습니다. “–status” 옵션을 사용하면 md5sum은 출력을 인쇄하지 않습니다. 대신 상태 코드는 변경 사항이 없으면 0을 반환하고, 파일이 일치하지 않으면 1을 반환합니다. 다음 스크립트 hashes.sh는 파일이 변경되었기 때문에 상태 코드에서 1을 반환합니다. 스크립트 파일은 아래와 같습니다:
sh hashes.shhashes.sh:
#!/bin/bash
md5sum --status --check hashes
Result=$?
echo "File check status is: $Result"
exit $Result
[Documents]$ sh hashes.sh
File check status is: 1
[lion@ornatecandy Documents]$ Q5. 잘못된 해시 값을 식별하는 방법은?
md5sum은 파일을 비교할 때 잘못된 해시가 있는지 알려줄 수 있습니다. 해시 값이 잘못된 경우 경고를 표시하려면 –warn 옵션을 사용할 수 있습니다. 마지막 예제에서는 sed를 사용하여 세 번째 줄의 시작 부분에 추가 문자를 삽입합니다. 이렇게 하면 hashes 파일의 해시 값이 변경되어 유효하지 않게 됩니다.
sed -i '3s/.*/a&/' hashes
md5sum --warn --check hashes이것은 세 번째 줄에 잘못된 해시가 있음을 보여줍니다.
[Documents]$ sed -i '3s/.*/a&/' hashes
[Documents]$ md5sum --warn --check hashes
file1.txt: OK
file2.txt: OK
md5sum: hashes: 3: improperly formatted MD5 checksum line
md5sum: WARNING: 1 line is improperly formatted
[Documents]$결론
md5sum은 원본 파일에서 변경된 파일이 있는지 빠르게 검증할 수 있는 간단한 명령어입니다. md5sum에 대한 자세한 내용은 매뉴얼 페이지를 참조하십시오.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.