4개의 디스크 중 3개만 실행되는 mdadm raid 6 파일 시스템이 있습니다. 나는 4x2TB 디스크를 가지고 있고 네 번째 디스크를 추가할 때마다(일주일 내내 시도했습니다) 다음과 같은 작업을 수행합니다. ls
파일 시스템 오류가 발생합니다.
$ ll /mnt/downloads/downloads
...
d????????? ? ? ? ? ? drivers/
...
그러나 새로 추가된 디스크를 삭제할 때마다 파일 시스템이 올바르게 표시됩니다.
$ sudo mdadm /dev/md0 --fail /dev/sde1
mdadm: set /dev/sde1 faulty in /dev/md0
$ ll /mnt/downloads/downloads
(correct contents)
슈퍼 블록을 제로화하고 레이드 관련 블록을 삭제하려고 시도했지만 sudo wipefs -a /dev/sde1
모두 동일한 실패가 발생했습니다.
다음을 수행하여 디스크가 3개만 있는 mdadm 배열을 확인하면 오류가 표시되지 않습니다 echo check > /sys/block/md0/md/sync_action
.
불량 블록이 나타나는지 확인하기 위해 디스크의 모든 섹터를 읽어 보았지만 아무 일도 일어나지 않았습니다.
지금은 디스크에서 실행하고 있지만 sudo badblocks -wsv /dev/sde1
오류가 있을지 의심스럽습니다.
이것은 매우 혼란스럽습니다. 내 디스크가 어떤 식으로든 손상되었으며 어떤 이유로 디스크 검사가 작동하지 않는 것입니까?
아니면 디스크를 올바르게 추가하지 않은 것과 관련이 있습니까? 난 달린다:
sudo mdadm /dev/md0 -a /dev/sde1
나는 항상 파일 시스템이 마운트된 상태에서 이 명령을 실행하고 디스크를 추가하는 동안 마운트를 해제한다고 생각합니다. 이것이 문제를 일으킬 것이라고 생각하지 않습니다. 그렇죠?
답변1
드라이브 자체가 나쁘지 않다면 커널 버그일 가능성이 높습니다.
예를 들어 최근 RAID6 재동기화와 관련된 데이터 손상 버그가 발생했으며 실행 중인 커널 버전에 따라 다음과 같은 영향을 받을 수 있습니다.
버그: 4f4fd7c5798bbdd5a03a60f6269cf1177fbd11ef 제출로 인해 RAID6 복구가 손상되었습니다.
그렇지 않으면 RAID6( , )의 나머지 패리티에서 가능한 RAID 불일치도 확인하십시오 mdadm --action=check /dev/mdX
.watch head /sys/block/md*/md/mismatch_cnt
또한 재동기화 중에 나타날 수 있는 오류 메시지가 있는지 다른 모든 각도, memtest, smartctl 등 및 dmesg를 확인하세요.
답변2
btrfs를 사용하는 동안 이 문제를 발견했습니다.VMware 업데이트, 결과는 다음과 같습니다.
하드 드라이브 0과 하드 드라이브 4(Arch Linux vmware 게스트에 추가한 물리적 하드 드라이브)는 동일합니다.
깨지는 것도 당연합니다.
내 커널 버전이 영향을 받는 버전 중 하나이므로 Frostschutz의 답변은 여전히 관련이 있을 수 있습니다.