IO 오류가 발생했지만 badblocks 및 fsck는 만족합니다.

IO 오류가 발생했지만 badblocks 및 fsck는 만족합니다.

다음과 같은 기본 스택이 있는 ext4 파티션이 있습니다.

  • sda1과 sdb1이 RAID1에 함께 있으므로 md0이 됩니다.
  • md0은 LUKS로 암호화되어 md0_crypt가 생성됩니다.
  • md0_crypt 상단에는 /home/media 아래에 마운트된 단일 LVM 볼륨 mv0_vg_media가 있습니다.

수행할 때 cp /home/media/hierarchy/photo.jpg /tmpIO 오류가 발생합니다(그러나 수만 개 파일 중 20개 정도의 파일에 대해서만).

Hoever, 문제 디버깅을 시도할 때:

  • IO 오류가 발생하면 dmesg와 syslog는 모두 깨끗한 상태로 유지됩니다. (편집: 설명: 이는 --follow읽기 오류가 발생하는 동안 로그가 옵션으로 활성화되어 있어도 dmesg 또는 syslog에 기록된 디스크 관련 출력이 없음을 의미합니다 .)
  • sda 및 sdb의 불량 블록은 오류를 나타내지 않습니다.
  • /dev/mapper/md0_vg_media출력 에 대한 fsck는 "더 좁아질 수 있습니다. 무시됩니다." 경고는 있지만 오류는 없으며 자동 수정 옵션으로 아무것도 수정되지 않습니다.

나는 의아해한다. 해당 파일을 삭제하고 다시 동기화할 수도 있지만 실제로 문제가 무엇인지 모른다면 이는 좋지 않은 생각입니다.

이를 추가로 어떻게 디버깅할 수 있나요?

편집하다:

의견과 추가 연구를 통해 다음과 같은 접근 방식을 시도했지만(헛되이) 다음과 같은 결과를 얻었습니다.

  • mdadm --examine /dev/sda(sdb의 경우에도 동일) 다음을 반환합니다./dev/sda: MBR Magic : aa55 Partition[0] : 3907029167 sectors at 1 (type ee)
  • mdadm --examine-badblocks /dev/sda(sdb의 경우에도 동일) 다음을 반환합니다.mdadm: mbr metadata does not support badblocks
  • cat /sys/block/md0/md/mismatch_cnt0(0) 을 포함합니다.
  • echo 'check' > /sys/block/md0/md/sync_action검사를 수행하지만 오류는 표시되지 않습니다. Dmesg에는 두 개의 항목이 있으며 [734796.807172] md: data-check of RAID array md0바로 아래에는 다음 항목이 있습니다.[754370.977181] md: md0: data-check done.

관련 정보