Centos5 - mismatch_cnt neni 0 na RAID5

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Neděle Březen 17 19:33:57 CET 2013


On Sat, 16 Mar 2013, Petr Simek wrote:

>>  Asi by docela pomohlo vědět, kde se ty diskrepance objevují.
>
> Jak bych neco takoveho zjistil ?

Už jsem psal dvě možnosti: SystemTap-em přidat zalogování čísla bloku do 
místa, kde se zvětšuje čítač (samozřejmě by šlo i přímo upravit jádro, ale 
to je už je pro větší drsňáky) nebo to zkontroloval z userlandu (vyrobit 
program, který přečte odpovídající bloky ze všech fyzických zařízení, 
spočítá xor a nahlásí místa, kde nevyjde nula).

Až zjistíte nějaké číslo bloku -- u RAID5 spíš čísla několika bloků, 
protože víte, že nesedí parita, ale není jasné, který ze zůčastněných to 
zavinil -- na fyzických zařízeních, tak to bude postupně potřeba převést 
zpátky na číslo bloku v RAIDu, číslo bloku v LV (je-li nad tím RAIDem 
LVM) a postižený objekt v souborovém systému (je-li na příslušném místě 
souborový systém). Upřímně řečeno by bylo hezké, kdyby na to byl nějaký 
nástroj; lze to sice udělat ručně a párkrát jsem to už udělal, ale je to 
dost otrava.

> Jeste dalsi poznatek - kdyz tam neco zapisu tak se to cislo zvysuje. Po 
> rebootu stroje je nula.

Zvyšuje se to okamžitě po zápisu nebo až s nějakým zpožděním? Odpovídá 
zvýšení čítače záznam v logu (md: syncing RAID array mdX)? Na RHEL/CentOSu 
se každý týden (typicky v neděli brzo ráno) automaticky spouští kontrola.

> Nicmene zapsana data se tvari ze jsou OK.

To může znamenat, že je špatně jen parita a ne data (a vada se projeví jen 
v případě výpadku disku a pokusu data rekonstruovat z parity), nebo také 
to, že se chyba objevila v nějakém místě, kam se zapisovalo jen dočasně 
(žurnál?).

-- 
Pavel Kankovsky aka Peak                          / Jeremiah 9:21        \
"For death is come up into our MS Windows(tm)..." \ 21st century edition /


Další informace o konferenci Linux