Todas as respostas acima estão incorretas com relação aos recursos do RAID 6. Os algoritmos RAID 6 operam byte a byte como RAID 5, e se um único byte em qualquer unidade estiver corrompido, mesmo sem nenhum erro indicado pela unidade, ele poderá ser detectado e corrigido. O algoritmo para fazer isso é completamente explicado em
https://mirrors.edge.kernel.org/pub/linux/kernel/people/hpa/raid6.pdf
Para executar essa verificação, as unidades de paridade P e Q também devem ser lidas junto com as unidades de dados. Se a paridade calculada P 'e Q' diferir sem erros de unidade, uma análise poderá identificar qual das unidades está incorreta e corrigir os dados.
Além disso, se a identificação da unidade estiver em uma unidade que não está presente (como a unidade 137, se houver apenas 15 unidades), mais de uma unidade fornecerá dados corrompidos POR ESTE BYTE, sinalizando um erro de erro incorrigível. Quando há muito menos que 256 unidades no conjunto, isso é detectado com alta probabilidade por byte e como existem muitos bytes em um bloco, com probabilidade extremamente alta por bloco. Se a identificação da unidade não for consistente para todos os bytes dentro do bloco RAID, mais de uma unidade fornecerá dados corrompidos e geralmente poderá-se rejeitar a condição, mas desde que todas as identificações da unidade sejam válidas, o bloco não precisará necessariamente ser rejeitado.
Demora mais do que o tempo de verificação usual para executar essa correção, mas só precisa ser realizada com o cálculo da síndrome (P e Q) que mostra um erro.
Tudo isso dito, no entanto, não examinei o código mdadm para determinar se a corrupção de byte único é tratada. Estou ciente de que o mdadm relata erros de síndrome RAID6 na varredura mensal, mas, a partir da mensagem de erro, não está claro se eles estão sendo corrigidos - ele não interrompe o conjunto de unidades nem identifica nenhuma unidade específica na mensagem.