질문 1:
-b
옵션 과 관련하여 : 이것은 디스크에 따라 다릅니다. 최신 대형 디스크에는 4KB 블록이 있으며이 경우 설정해야합니다 -b 4096
. 운영 체제에서 블록 크기 를 얻을 수 있으며 일반적으로 레이블에서 디스크 정보를 읽거나 디스크의 모델 번호를 검색하여 얻을 수 있습니다. 경우 -b
귀하의 블록 크기보다 큰 값으로 설정되어,의 무결성 badblocks
(당신이 거짓 네거티브를 얻을 수 있습니다 즉 : 그들은 여전히 존재하는 경우에는 불량 블록이 발견되지 않음) 결과가 손상 될 수 있습니다. 경우 -b
드라이브의 블록 크기보다 작은 값으로 설정되면, 속도 badblocks
실행이 손상 될 수 있습니다. 잘 모르겠지만 설정에 다른 문제가있을 수 있습니다-b
전체 블록의 무결성을 확인하지 않기 때문에 블록 크기보다 작은 값으로 설정하면 너무 작게 설정하면 여전히 부정적 결과를 얻을 수 있습니다.
이 -c
옵션은 한 번에 확인해야하는 블록 수에 해당합니다. 기본적으로 일괄 읽기 / 쓰기 이 옵션은 결과의 무결성에 영향을 미치지 않지만 badblocks
실행 속도에 영향을줍니다 . badblocks
에 의해 지정된대로 모든 N 블록에 대해 (선택적으로) 쓰기, 읽기, 버퍼링, 검사, 반복 -c
합니다 경우 -c
너무 낮게 설정되어,이는 것 badblocks
실행이 대기하고 오버 헤드를 별도의 IO 요청 초래을 처리하는 등, 더 이상 일반보다 더 가지고 가고, 디스크도 요청 당 추가 오버 헤드를 부과 할 수 있습니다. -c
너무 높게 설정 하면 badblocks
메모리가 부족할 수 있습니다. 이 경우 badblocks
시작 후 상당히 빨리 실패합니다. 여기에 추가 고려 사항에는 병렬 badblocks
실행이 포함 됩니다.badblocks
동일한 디스크의 여러 파티션 (나쁜 생각) 또는 동일한 IO 채널의 여러 디스크에 대해 병렬 실행이 IO 대역폭과 싸우지 않도록 -c
사용 가능한 메모리를 감안할 때 상당히 높은 것으로 조정하고 싶을 것입니다 badblocks
제정신으로 병렬화 할 수 있습니다.
질문 2 :
다른 답변이 나타내는 것과는 달리, 쓰기 모드 테스트는 어느 정도 신뢰할 수있는 비파괴 읽기 - 쓰기 시험보다이지만, 모든 데이터에 파괴되는 비용으로, 두 배 빠른 속도입니다. 이유를 설명하겠습니다.-w
비파괴 모드 badblocks
에서 다음을 수행합니다.
- 기존 데이터를 읽고 체크섬 (필요한 경우 다시 읽음)하여 메모리에 저장하십시오.
- 미리 결정된 패턴 (
-p
일반적으로 필요하지는 않지만 옵션으로 재정의 가능 )을 블록에 씁니다 .
- 읽은 데이터가 패턴과 동일한 지 확인하면서 블록을 다시 읽습니다.
- 원본 데이터를 디스크에 다시 씁니다.
- 나는 이것에 대해 확신 할 수 없지만 아마도 원래 데이터가 성공적으로 쓰여졌으며 여전히 동일한 것에 체크섬이 있는지 다시 읽고 확인합니다.
파괴 ( -w
) 모드에서는 badblocks
위의 2 단계와 3 단계 만 수행합니다. 즉, 데이터 무결성을 확인하는 데 필요한 읽기 / 쓰기 작업 수가 절반으로 줄어 듭니다. 블록이 불량하면 데이터가 어느 모드에서나 잘못됩니다. 물론, 드라이브에 저장된 데이터에 관심이 있다면, -w
모든 데이터를 없애고 badblocks
대신 '패턴을 디스크에 기록하는 것처럼 비파괴 모드를 사용해야합니다 .
경고 : 블록이되면 가는 나쁜 있지만, 아직 완전히 사라되지 않으며, 일부 읽기 / 쓰기 검증 쌍 일 수 있으며, 일부는하지 않을 수 있습니다. 이 경우 비파괴 모드는 두 세트의 읽기 / 쓰기 확인을 수행하므로 블록의 "무시"를보다 안정적으로 표시 할 수 있습니다 (4 단계의 글 머리 기호 참조). 비파괴 모드가 이런 방식으로 더 안정적 이더라도 우연의 일치 만으로 더 안정적 입니다. 완전히 나쁘지는 않지만 여러 읽기 / 쓰기 작업을 유지할 수없는 블록을 확인하는 올바른 방법 badblocks
은 -p
옵션을 사용하여 동일한 데이터에 대해 여러 번 실행 하는 것입니다.
질문 3 :
SMART가 섹터를 재 할당하는 경우 드라이브를 최대한 빨리 교체하는 것이 좋습니다. 몇 개의 섹터를 잃어버린 드라이브가 항상 잃어버린 것은 아니지만 원인은 일반적으로 자주 사용되는 드라이브가 자기 적으로 흐릿 해 지거나 헤드 / 모터가 고장 나서 읽기 / 쓰기가 부정확하거나 실패하는 것입니다. 드라이브의 데이터 가치와 실행중인 시스템에서 필요한 안정성에 따라 최종 결정은 사용자에게 달려 있습니다. 파일 서버에서 수년간 SMART 경고와 함께 회전하는 알려진 불량 블록이있는 일부 드라이브가 있지만 많은 고통없이 전체 장애를 처리 할 수 있도록 일정대로 백업됩니다.