내 홈 비디오 컬렉션의 크기는 지난 몇 년 동안 극적으로 증가했으며 보안 저장에 대한 문제가 점점 더 커지고 있습니다. 저는 2.5 USB 씬 드라이브에 저장된 동일한 컬렉션의 사본 3개를 사용하고 있습니다. 나는 더 안전한 방법이 있다는 것을 알고 있지만 그것은 나에게 너무 비쌉니다. 자기장 제거로 인한 데이터 손실을 방지하기 위해 2년마다 새 복사본을 만듭니다. 복사 작업을 할 때마다 손상된 비트가 전파되거나 시간이 지나면 파일이 손상될까 봐 걱정됩니다.
파일 세트의 동일한 복사본을 보관하는 3개의 HDD 드라이브 A, B, C가 있다고 가정합니다. 새 사본 세트를 완성한 후 다음을 수행하고 싶습니다.
- A의 모든 파일에 대한 md5 체크섬 파일 목록을 A에 저장합니다.
- B와 C도 마찬가지
- A 목록과 B 및 C 목록의 비교.
예를 들어, A 드라이브에 있는 손상된 비디오 파일은 A와 B 및 C의 체크섬이 다른 것으로 표시될 것으로 예상됩니다(물론 3개의 다른 체크섬 코드를 찾는 것은 슬픈 일이지만 이것이 아직 사례 없음)
md5sum+find와 같은 일부 명령줄 도구나 일부 리뷰를 읽은 tripwire라는 소프트웨어를 사용하여 이 작업을 쉽게 수행할 수 있습니까?
답변1
이것이 내가하려는 일입니다.
find > files.txt
드라이브 루트에서 사용할 수 있는 파일 목록을 얻으려면 "files.txt" 파일이 생성됩니다.
그런 다음 각 파일의 체크섬을 얻으려면 를 사용할 수 있습니다 while read line; do shasum -a 256 $line; done < files.txt > checksums.txt
. 그러면 모든 파일 경로와 해당 체크섬이 포함된 "checksums.txt" 파일이 생성됩니다.
마지막으로 diff -y --suppress-common-lines checksums_driveA.txt checksums_driveB.txt
체크섬을 사용하여 파일 간에 차이가 있는지 빠르게 확인할 수 있습니다.
또는 이를 사용하여 diff -r --brief directory/driveA directory/driveB
두 디렉터리 내용이 동일한지 확인할 수도 있습니다.