mdadm raid5 read error nie można naprawić

1

Mam programowy raid5, w którym można zainstalować 4 dyski. sda, sdb, sdc, sdd Ponieważ wszystko działało poprawnie, chciałem przetestować tablicę. W tym celu wyciągnąłem wtyczkę z jednego z dysków (sdd). Wszystko poszło dobrze, więc spróbowałem ponownie dodać dysk za pomocą mdadm --add /dev/md0 /dev/sdd, mdadm odbudowywał tablicę, więc po kilku godzinach sprawdziłem i coś poszło nie tak, sdc nie powiodło się.

Krótko mówiąc: sdc ma kilka uszkodzonych sektorów, gdy mdadm czyta z tych sektorów, nie działa.

W / var / log / messages widzę:

odczyt błędu nie można skorygować (sektor 753682864 na sdc).

Nie mogę - zmontować tablicy, ponieważ widzi, że sdc i sdd są uszkodzone.

Mogę jednak mdadm /dev/md0 --create --assume-clean -l5 -n4 /dev/sd[abc] missing. Po tym próbowałem dodać ssd, ale bez powodzenia.

Kiedy mdadm nie powiedzie się i zgłosi sektor w / var / log / messages, mogę to zweryfikować, wykonując hdparm --read-sector [sector] /dev/sdc. Kiedy nadpisuję sektor używając hdparm --write-sector zostaje zastąpiony, a następnie działa ponownie. Jest to jednak proces bardzo czasochłonny.

Czy są jakieś sposoby na odzyskanie sił po tym bałaganie? Czy dublowanie sdc na sdd (z dd), a następnie dodanie sdd jako brakującego dysku pomoże?

siebz0r
źródło
Ile jest złych sektorów? Jeśli jest ich tylko kilka, napraw je za pomocą hdparm. Jeśli jest ich wiele, wrzuć dysk i przywróć go z kopii zapasowej.
psusi
Jak każdy dobry administrator nie mam kopii zapasowej. Zakładałem, że najazd 5 zapewni wystarczającą nadmiarowość. Nie wiem, ile jest złych sektorów, ale wygląda na to, że jest całkiem przypadkowy. Zamienię najpierw kabel sata, a następnie spróbuj ponownie.
siebz0r
3
RAID5 nie zastępuje tworzenia kopii zapasowych, służą całkowicie różne cele. Jeśli przypadkowo usuniesz plik lub błąd oprogramowania spowoduje polecenie skasowania lub usunięcia pliku, macierz RAID 5 sumiennie zniszczy dane na wszystkich dyskach.
David Schwartz
Wiem, ale nalot 5 odpowiada moim potrzebom
siebz0r
1
Re: „RAID nie jest kopią zapasową, ponieważ nie pomoże ci z rm -rf”. Nie jest to problem nie do pokonania: użyj LVM, aby utworzyć migawkę obok woluminu aktywnego na tej samej macierzy md. Jeśli usuniesz niewłaściwą rzecz lub wszystko lub system plików zostanie w jakiś sposób uszkodzony, przywróć migawkę. Oczywiście, tam też może się nie udać, ale jest znacznie mniej prawdopodobne i istnieje ryzyko niepowodzenia WSZELKIEJ strategii tworzenia kopii zapasowych lub redundancji. Chodzi o zarządzanie ryzykiem.
Chris Smith