Wszystkie powyższe odpowiedzi są nieprawidłowe w odniesieniu do możliwości RAID 6. Algorytmy RAID 6 działają bajt po bajcie, podobnie jak RAID 5, a jeśli pojedynczy bajt na jednym dysku jest uszkodzony, nawet bez błędu wskazanego przez dysk, może być wykrytym I POPRAWIONYM. Algorytm do tego jest całkowicie wyjaśniony w
https://mirrors.edge.kernel.org/pub/linux/kernel/people/hpa/raid6.pdf
Aby wykonać to sprawdzenie, parzyste dyski P i Q muszą zostać odczytane wraz z dyskami danych. Jeśli obliczona parzystość P 'i Q' różni się bez błędów napędu, analiza może wskazać, który z napędów jest nieprawidłowy, i poprawić dane.
Ponadto, jeśli identyfikacja dysku dotyczy dysku, który nie jest obecny (takiego jak dysk 137, jeśli jest tylko 15 dysków), więcej niż jeden dysk dostarcza uszkodzone dane W TYM BYTE, sygnalizując błąd, którego nie można naprawić. Gdy w zestawie znajduje się znacznie mniej niż 256 dysków, jest to wykrywane z dużym prawdopodobieństwem na bajt, a ponieważ w bloku jest wiele bajtów, z bardzo wysokim prawdopodobieństwem na blok. Jeśli identyfikacja dysku nie jest spójna dla wszystkich bajtów w bloku RAID, ponownie więcej niż jeden dysk dostarcza uszkodzonych danych i ogólnie można odrzucić warunek, ale dopóki wszystkie identyfikacje dysku są prawidłowe, blok niekoniecznie zostać odrzuconym.
Wykonanie tej korekcji zajmuje więcej czasu niż zwykle, ale należy ją wykonać tylko wtedy, gdy obliczenie syndromu (P i Q) pokazuje błąd.
Biorąc to wszystko pod uwagę, nie zbadałem jednak kodu mdadm, aby ustalić, czy obsługiwane jest uszkodzenie jednobajtowe. Wiem, że mdadm zgłasza błędy syndromu RAID6 podczas comiesięcznego skanowania, ale z komunikatu o błędzie nie wiadomo, czy są one poprawiane - nie zatrzymuje macierzy dysków ani nie identyfikuje żadnego konkretnego dysku w komunikacie.