sha1sum은 동일하더라도 체크섬 불일치를 보고합니다.

sha1sum은 동일하더라도 체크섬 불일치를 보고합니다.

어쩌면 내가 여기서 정말 어리석은 짓을 하고 있을지도 모르지만 Google은 이 문제를 해결하는 데 큰 도움이 되지 않습니다.

백업 목적으로 사용하는 파일 아카이브가 있습니다. 이 아카이브에서 SHA1 체크섬 파일을 생성했습니다.

sha1sum myarchive.tar > myarchive.tar.sha1

파일의 내용은 다음과 같습니다.

6f5d7bdd71fe25ed8e881265fdb8a8bbcdaa41c1  myarchive.tar

또한 파일에 연결하지 않고 터미널에서 SHA1 프로세스를 실행했습니다.

sha1sum myarchive.tar

결과는 다음과 같습니다.

6f5d7bdd71fe25ed8e881265fdb8a8bbcdaa41c1  myarchive.tar

분명히 이러한 체크섬은 동일합니다. 그러나 verify 명령을 실행하면 아카이브와 해당 SHA1 파일이 동일한 디렉터리에 나란히 있습니다.

sha1sum -c myarchive.tar.sha1

체크섬이 일치하지 않는다는 오류가 발생합니다.

myarchive.tar: FAILED
sha1sum: WARNING: 1 computed checksum did NOT match

여기에는 분명히 뭔가 문제가 있는 것 같지만 그게 무엇인지는 모르겠습니다. 누구든지 나에게 깨달을 수 있습니까?

편집: 흥미롭게도 파일에 대해 두 개의 연속 MD5를 수행하면 두 개의 서로 다른 체크섬이 생성됩니다. 이제 나는 혼란스러워졌습니다.

$ md5sum myarchive.tar
9a15036eed341613bbcf2c4b53a09859  myarchive.tar
$ md5sum myarchive.tar
a662d6b469627c62f2b03ee0df067436  myarchive.tar

편집 2: 추가 컨텍스트:

  • 이것은 실제 하드웨어(내 Ubuntu MATE 19.10 데스크탑)에 있습니다.
  • 제가 만든 아카이브는 블루레이 백업 디스크용이었습니다. 크기는 22.6GB이다.
  • Blu-ray 디스크에 구운 파일에 대한 SHA1 검증이 최종적으로 성공했습니다.

EDIT3: 출력 보기 요청에 대한 응답으로 dmesg아래와 같이 일부 오류가 있는 것 같습니다.

[ 7102.039819] perf: interrupt took too long (2502 > 2500), lowering kernel.perf_event_max_sample_rate to 79750
[ 8278.017874] sr 4:0:0:0: [sr0] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 8278.017876] sr 4:0:0:0: [sr0] tag#0 Sense Key : Blank Check [current] 
[ 8278.017877] sr 4:0:0:0: [sr0] tag#0 Add. Sense: No additional sense information
[ 8278.017878] sr 4:0:0:0: [sr0] tag#0 CDB: Read(10) 28 00 00 00 00 00 00 00 01 00
[ 8278.017879] blk_update_request: critical target error, dev sr0, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
[ 8278.019391] sr 4:0:0:0: [sr0] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 8278.019392] sr 4:0:0:0: [sr0] tag#0 Sense Key : Blank Check [current] 
[ 8278.019392] sr 4:0:0:0: [sr0] tag#0 Add. Sense: No additional sense information
[ 8278.019393] sr 4:0:0:0: [sr0] tag#0 CDB: Read(10) 28 00 00 00 00 00 00 00 01 00
[ 8278.019394] blk_update_request: critical target error, dev sr0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 8278.019396] Buffer I/O error on dev sr0, logical block 0, async page read

누군가가 나를 고칠 수는 있지만 이것이 내 USB Blu-ray 드라이브와 관련이 있다고 생각합니다.

답변1

귀하의 경우에는 신중한 조사가 필요한 두 가지 사항이 있습니다.


블루레이 디스크

출력 클립에서 알 수 있듯이 dmesgBlu-ray 디스크의 수명이 다했습니다. 안 돼요고정시키다Blu-ray 드라이브가 Blu-ray 디스크의 데이터를 100% 정확하게 읽을 수 없다면 이는 현재 불가능합니다.

Blu-ray 디스크에 대한 개인적인 권장 사항:어떤 이유에서든 Blu-ray 드라이브를 사용하여 무언가를 굽어야 한다면 저는 반드시 M-Disc(위키피디아) 블루레이 디스크. 매우 민감한 경우작은데이터 저장은 거의 완벽합니다.


컴퓨터의 저장 공간

컴퓨터 저장소에서 서로 다른 연속 체크섬을 읽는 것은 저장소에서 읽는 것이라면 나를 더 짜증나게 할 것입니다. 이론적으로 기억력이 나쁠 수도 있지만 그럴 가능성은 거의 없습니다. 내 제안은 관찰하는 것입니다 dmesg(매뉴얼 페이지) 오랫동안 이러한 명령의 예는 다음과 같습니다.

\dmesg --human --color=auto --ctime --level=err,warn --follow

이는 스토리지(클래식 SATA HDD이든 최신 M.2 NVMe SSD이든)에 오류가 있는지 확인하는 데 도움이 될 수 있습니다. 만약 당신이 정말로 그곳에서 그것을 발견했다면스토리지에 문제가 있습니다. 백업을 준비하는 것이 가장 좋습니다.


이 답변이 비슷한 위치에 있는 누군가에게 도움이 되기를 바랍니다.

관련 정보