ext4 fsck는 시간이 매우 오래 걸립니다

ext4 fsck는 시간이 매우 오래 걸립니다

제가 겪고 있는 문제는 fsck시간이 매우 오래 걸린다는 것입니다. Google에서 철저하게 검색했지만 문제를 해결하는 항목을 찾을 수 없습니다.

내가 실행중인 명령은 입니다 sudo fsck.ext4 -vc /dev/sdb1.

일부 불량 섹터가 있는 200GB SATA 하드 드라이브가 있습니다. SMART와 호환되지만 SMART는 섹터를 다시 매핑할 수 없습니다. 내가 실행 중인 명령은 불량 섹터를 확인하고 이를 불량 블록 목록에 추가합니다. 그러나 지금까지의 결과는 다음과 같습니다.

e2fsck 1.42 (29-Nov-2011)
Checking for bad blocks (read-only test): 1.95% done, 11:53:24 elapsed. (1657/0/0 errors)

이 속도라면 아마 1달 정도 걸릴 것 같습니다.

이제 "하드 드라이브가 너무 오래되어서 곧 고장날 것입니다."라고 말하지 마십시오. 불량 블록 목록에 불량 블록을 추가하고 싶습니다. 하드 드라이브에서 새로운 불량 섹터가 생성되지 않았습니다.

내 컴퓨터에는 i3 쿼드 코어 프로세서와 8GB RAM이 있습니다. 내 CPU 사용량은 10% 미만이고 RAM은 약 1.5GB를 사용하고 있습니다. 페이지가 매겨진 항목이 없습니다.

내가 검사하고 있는 디스크에는 아무것도 없는 새로 생성된 ext4 파일 시스템이 있습니다.

디스크를 fsck하고 불량 블록을 나열하는 데 왜 1개월이 걸리는지 이해가 되지 않습니다. 여기에는 확실히 뭔가 문제가 있습니다. 어떤 제안이 있으십니까?

답변1

SMART는 섹터를 다시 매핑하지 않고 오류만 감지하고 기록합니다. 불량 섹터는 쓰기 시 자동으로 다시 매핑됩니다. dd또는 를 사용하여 이 작업을 수행 할 수 있습니다 hdparm --write-sector.

드라이브에 예약된 섹터가 부족하여 섹터를 다시 매핑할 수 없는 경우 당황하기 전에 조치를 취해야 합니다.

파일 시스템에서 다시 매핑하는 것은 의미가 없습니다.

hdparm -t /dev/sdb합리적인 결과를 얻으면 단독 badblocks으로 실행하여( strace 사용 -s) 직접 실행하는 것이 더 빠른지 확인하고, 그렇지 않은 경우 strace를 통해 실행하면 성능 문제의 원인을 이해할 수 있습니다.

디스크의 일부 영역으로 인해 읽기 재시도가 많이 발생할 수 있습니다.

관련 정보