답변:
당신의 추측은 맞습니다.
소스 코드는 다음과 같습니다.
if (v_flag)
fprintf(stderr,
_("Pass completed, %u bad blocks found. (%d/%d/%d errors)\n"),
bb_count, num_read_errors, num_write_errors, num_corruption_errors);
따라서 읽기 / 쓰기 / 손상 오류입니다. 그리고 부패는 이전에 작성된 데이터와의 비교를 의미합니다.
if (t_flag) {
/* test the comparison between all the
blocks successfully read */
int i;
for (i = 0; i < got; ++i)
if (memcmp (blkbuf+i*block_size,
blkbuf+blocks_at_once*block_size,
block_size))
bb_count += bb_output(currently_testing + i, CORRUPTION_ERROR);
}
(0/0/120 errors)
.
badblocks
은 실행 중 디스크에 다른 내용이 기록 된 것이므로이 오류는 전혀 오류가 아닙니다 (사용자 오류 제외).
잘못된. 배드 블럭이 말한다면 아무것도 "오류가 발견되지"아니, 그것은 의미 :
선택적으로 엔터테인먼트를 위해 또는 문진으로 디스크를 보관할 수 있습니다.
(최신 디스크에는 불량 블록을 다시 매핑 할 수있는 여분의 실린더 세트가 있습니다. 디스크가 없으면 디스크를 제조 할 수있는 방법이 없기 때문에 불량 블록 목록을 보았을 때 사용자가 피의 지옥을 외쳤 습니다 . 불량 블록 이 표시되면 해당 공간을 의미합니다 회전 디스크의 일반적인 장애 모드는 기하 급수적으로 많은 불량 블록 수를 제공하기 때문에 일반적으로 디스크에 몇 시간이 남아 있음을 의미합니다.)
badblocks
중요한 데이터가있는 디스크에서는 실행하지 마십시오 . 디스크에 오류가 있으면 오류 badblocks
로 인해 원본 데이터를 다시 쓸 수없는 경우 비파괴 쓰기 모드에서도 추가 손상이 발생할 수 있습니다.
-n
테스트는 읽기 전용으로되어 있습니까?
-n
비파괴 쓰기입니다. 따라서 테스트 후 원본 데이터를 기록하지만 복원합니다. 오류로 인해 실패 할 수 있습니다. 읽기 전용의 경우 badblocks
옵션을 전혀 사용하지 않는다고 생각합니다.