[1. 개요]
파일의 sha256 해시코드를 계산하는 명령어로
계산한 해시코드를 이용해 파일의 무결성을 체크 할 수 있다.
[2. 예제]
- 해시코드 계산
=> /root/abc.txt 라는 파일이 있다고 가정
$ sha256sum /root/abc.txt
=> 결과
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb /root/abc.txt
$ sha256sum abc.txt
=> 결과
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb abc.txt - 무결성 체크
$ sha256sum abc.txt > my.sha256
$ sha256sum --check my.sha256
=> 결과
abc.txt: OK
리턴 코드 역시 0 이다.
$ cat my.sha256 | sha256sum --check
=> sha256sum 은 파일 명이 따로 없으면 표준 입력을 사용하게 된다.
[3. 실제 활용]
처음 해시코드를 계산 할 때 출력된 결과를 보면
해시코드는 같으나 파일 경로가 다른 것을 볼 수 있다.
하나는 절대 경로이고 나머지는 상대경로 인데
이는 무결성을 체크할 때는
해시코드와 파일경로를 입력으로 받기 때문이다.
실제로 파일 무결성을 체크 할 때는
파일을 다른 서버로 옮긴 뒤 하는 경우가 많으므로
이 파일 경로는 달라질 수 있다.
그래서, 해시코드만 따로 저장하고,
데이터 파일과 이 파일에 대한 해시 코드가 저장된 파일을 같이 옮기고
sha256sum --check 를 하기 전 적절 히 입력을 만들어서 처리하는 편이 좋다고 생각한다.
예시)
$ sha256sum abc.txt | awk '{print $1}' > abc.txt.sha256
## abc.txt 와 abc.txt.sha256 을 다른 서버로 옮겼다고 가정
$ echo $(cat abc.txt.sha256) /data/abc.txt | sha256sum --check
'리눅스 > 명령어' 카테고리의 다른 글
find 명령어 사용방법 정리 (0) | 2024.06.11 |
---|---|
sed / tr (0) | 2024.04.30 |
vim. 관련 예제 (0) | 2024.04.30 |
date 명령어 (0) | 2023.01.16 |