Coś złego zaczęło dziać się z jednym z dysków w jednym z desktopów. Wygląda, jakby startował, a następnie robił restart. Głośne cyknięcie, rozkręcanie się dysku, a w tym czasie system stoi. Albo umiera zasilacz, albo dysk. Albo coś gdzieś nie styka.
Ponieważ w moje ręce wpadł inny dysk, postanowiłem podłączyć go do sprawnego komputera, zdiagnozować, wyzerować i zamienić z dyskiem w padającym desktopie.
Wszystko byłoby fajnie, ale w komputerze, w którym chciałem dokonać diagnostyki jest już software RAID. Po podłączeniu dysku do diagnostyki (IDE) system wstał, ale… tylko z jednym dyskiem (zdegradowany RAID). Podłączanego dysku też nie widział. Efekt był taki, że po odpięciu dysku do diagnostyki i uruchomieniu systemu, przywitał mnie rozjechany RAID (md0):
cat /proc/mdstat
Personalities : [raid1]
md127 : active (auto-read-only) raid1 sda1[0]
57584256 blocks super 1.2 [2/1] [U_]
md0 : active raid1 sdb2[1]
57584256 blocks super 1.2 [2/1] [_U]
Natomiast w dmesg widoczny był wpis:
md: kicking non-fresh sda1 from array!
Wszystko jak najbardziej OK, tylko jak teraz poskładać to do kupy? TBH liczyłem, że system sam wykryje, że dysk będący częścią RAID wrócił i że ma stare dane. Czyli zrobi synchronizację. No niestety, nic nie dzieje się automagicznie. Chwila z wyszukiwarką i znalazłem rozwiązanie:
mdadm --stop /dev/md127
mdadm --add /dev/md0 /dev/sda1
Po takich komendach RAID rozpoczął synchronizację, której postęp można sprawdzić przez cat /proc/mdstat.
Tyle w kwestii podłączania dziwnych dysków do desktopa z software RAID. Przyczyną dziwnego zachowania okazało się… moje czytanie instrukcji. Nie zapakowałem dysku jak przyszedł (zlimitowany do 32GB), tylko zmieniłem zworką tryb na auto select. Znaczy tak mi się wydawało, gdyż wszystko wskazuje na to, że opis należy czytać odwrotnie. Jakichkolwiek oznaczeń gdzie dół a gdzie góra oczywiście brak.
I bardzo dobrze, że macierz nie chciała się sama synchronizować. Dysk, który był przez Ciebie diagnozowany mógł mieć „świeższe” timestampy i – w wypadku, gdyby jednak był uszkodzony – rozjechałby Ci dane.
Od znajomego słyszałem o przypadku, gdzie z mirrora wypadł dysk. Admin wyjął dysk, obejrzał, stwierdził, że wszystko OK i… włożył ponownie do działającej maszyny. Dysk był padnięty, ale kontroler był na tyle głupi, że zaczął się przebudowywać. Niestety, nie w tą stronę :-\
K.
Wiem, wiem… Gwoli ścisłości: diagnozowany to był (w zasadzie: miał być) jeszcze inny, trzeci dysk.
Gdybym chciał się syncować w drugą stronę, tj. równać do starszego, to i tak musiałbym pewnie bootować się z jakiegoś live, bo system uruchomił z nowszego.
No i właśnie sprzętowe RAID są bardziej automagiczne. Z różnym skutkiem. Nie zna życia, kto nie zaliczył tego, co Twój znajomy; na szczęście nie na produkcji to miałem, więc po prostu 2h stawiania i konfigurowania systemu w plecy. 😉