RAID v Linuxu: Porovnání verzí

Z Milan Kerslager
Přejít na: navigace, hledání
m (Změna velikosti pole: online resize)
(Řešené příklady: rekonstrukce pole)
Řádka 260: Řádka 260:
 
   mount
 
   mount
 
   df -h
 
   df -h
 +
 +
=== Rekonstrukce degradovaného pole ===
 +
Když dojde při práci s polem k chybě při práci s diskem, je právě používaný oddíl označen jako selhaný (failed, písmeno „F“) a pole se přepne do degradovaného stavu. Pokud je systém dobře nakonfigurován, správce o tom dostane zprávu (typicky e-mailem). Stav lze zkontrolovat ve výpisu soubor <code>/proc/mdstat</code>:
 +
 +
$ cat /proc/mdstat
 +
Personalities : [raid1]
 +
md0 : active raid1 sda1[2](F) sdb1[1]
 +
      30716160 blocks [2/1] [_U]
 +
 +
unused devices: <none>
 +
 +
Ve výše uvedeném výpisu je v poli <code>md0</code> označen oddíl <code>/dev/sda1</code> jako selhaný (písmeno „F“), přičemž se jedná o druhý člen pole (číslo 2 v hranatých závorkách). Stav disku je též na dalším řádku výpisu schematicky znázorněn podtržítkem (písmeno „U“ znamená „UP“, tj. funkční, podtržítko označuje nefunkční člen pole). Disk nemusí být vadný, často se stává, že došlo jen k dočasné chybě (například pokud má disk více oddílů, přičemž ostatní oddíly jsou funkční). Nejsnadněji lze zjistit stav disku příkazem <code>smartctl</code> (viz článek [[Monitorování disků (S.M.A.R.T.)]]):
 +
 +
smartctl -a /dev/sda
 +
 +
Někdy disk jen „odpadne“, takže s ním nelze komunikovat. V tom případě může stačit jen restart systému nebo úplné vypnutí a pak zapnutí počítače. Je-li disk funkční, lze i bez restartu jen pole nechat znovu zrekonstruovat. Nejprve je však nutné selhaný oddíl z pole odstranit („remove“):
 +
 +
mdadm /dev/md0 -r /dev/sda1
 +
 +
Pak je možné oddíl znovu do pole zařadit. Pokud by disk nekomunikoval nebo komunikoval chybně, rekonstrukce selže a oddíl bude opět označen jako selhaný (písmeno „failed“), což nebude mít na činnost pole žádný vliv. Volný (nepoužívaný) oddíl lze do pole začlenit příkazem:
 +
 +
mdadm /dev/md0 -a /dev/sda1
 +
 +
Rekonstrukci pole lze sledovat v souboru <code>/proc/mdstat</code>, průběžně pak pomocí příkazu <code>watch</code> (příkaz každé dvě vteřiny provede příkaz zadaný jako parametr, přerušit ho lze kombinací kláves CTRL+c):
 +
 +
watch cat /proc/mdstat
 +
 +
Výstup může vypadat například takto:
 +
 +
Every 2,0s: cat /proc/mdstat
 +
 +
Personalities : [raid1]
 +
md0 : active raid1 sda1[2] sdb1[1]
 +
      30716160 blocks [2/1] [_U]
 +
      [>....................]  recovery =  0.5% (167936/30716160) finish=6.0min speed=83968K/sec
  
 
== Externí odkazy ==
 
== Externí odkazy ==

Verze z 17. 2. 2011, 09:51

RAID (Redundant Array of Inexpensive Disks) je metoda, jak zvýšit výkon diskového systému nebo bezpečnost na disku uložených dat bez extrémních pořizovacích nákladů. Patří všude tam, kde je výpadek disku nebo dokonce ztráta dat nepřípustná. Typické nasazení jsou servery v počítačových sítích a místa, kde i malý výpadek přináší velké ekonomické ztráty.

Úrovně RAID

Úrovně RAID se liší různou úrovní zabezpečení dat a výkonností. V praxi se nepoužívají všechny definované úrovně, ale jen ty nejvýhodnější. Podrobné informace najdete například na adrese http://cs.wikipedia.org/wiki/RAID.

RAID 0 (disk striping)

RAID 0 není vlastně žádný RAID. Zajišťuje pouze zvýšení výkonu paralelním provozováním více disků. Pole může být lineární (disky jsou jakoby spojeny za sebou) nebo prokládaná (kapacita je rozdělena na bloky, které se střídají – např. všechny liché na prvním a všechny sudé na druhém disku). Veškerá kapacita je určena pro ukládání dat (žádný prostor pro bezpečnostní informace). Pole má velikost 100% celkové kapacity. Při výpadku disku jsou data ztracena.

RAID 1 (disk mirroring)

RAID 1 je nejstarší používaná metoda zabezpečení dat. V počítači jsou dva stejně velké disky a oba provádějí všechny požadované operace. Rychlost zápisu proto klesá na 1/2 (musí se zapsat na oba disky). Naopak rychlost čtení může být v ideálním případě dvojnásobná (z každého disku je potřeba přečíst jen 1/2 dat). Pole má velikost 50 % celkové kapacity. Při výpadku disku z pole 2 disků je dále používán pouze zbývající disk a data nejsou dotčena. Vypadlý disk je však potřeba co nejrychleji nahradit, protože data už nejsou chráněna.

RAID 5

Bezpečnostní informace o paritě se ukládá rozprostřeně na všechny disky v poli, takže nedochází k přetěžování některého z disků. Zabezpečovací informace zabírají kapacitu jednoho z použitých disků. Minimální počet disků je 3. Pomocí zabezpečovací informace lze dopočítat ztracená data z 1 vypadlého disku. Výsledná kapacita je rovná součtu kapacity všech disků bez jednoho, takže s počtem disků se režie zmenšuje. Vypadlý disk je však potřeba co nejrychleji nahradit, protože data už nejsou chráněna.

RAID 6

RAID 6 je obdoba RAID 5, zabezpečovací informace jsou rozprostřeny po všech discích a zabírají kapacitu 2 disků. Pole je tak odolné vůči výpadku 2 disků. Při výpadku jednoho disku jsou tedy data po dobu rekonstrukce pole stále chráněna.

RAID 10

Označuje se jako RAID 1+0. Zrcadlené disky jsou tedy spojeny do 1 výsledného pole. Pole vyniká vysokou rychlostí čtení.

Administrace RAIDu v Linuxu

RAID pole lze v Linuxu vytvářet pomocí MD subsystému. Pro administraci RAID polí slouží v Linux příkaz mdadm.

Stav pole

Jádro Linuxu udržuje informace o aktuálním stavu MD subsystému v souboru /proc/mdstat. Pokud jsou v poli všechny disky, je pole funkční. V případě výpadku disku mluvíme o degradovaném RAID poli. Při vložení disku zpět do pole dojde k rekonstrukci chybějících dat (neplatí u RAID 0).

V níže uvedeném příkladu je v systému pole RAID 0, které se skládá ze dvou disků (sda1 a hda1). Pole je plně funkční (oba disku jsou ve stavu U jako up).

$ cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sda1[0] hda1[1]
      19542976 blocks [2/2] [UU]

unused devices: <none>

Detaily o aktivních polích je možné uložit do konfiguračního souboru pomocí příkazu:

echo DEVICE partitions > /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf

Oddíly pro RAID

Pole RAID se obvykle sestavuje s oddílů. Pokud jsou oddíly, ze kterých je RAID pole sestaveno, označeny číselným identifikátorem fd (typ Linux raid autodetect), mohou být při startu jádra automaticky sestaveny (což je důležité v případě, že kořenový souborový systém také na RAID poli). V takovém případě ale musí být příslušné moduly přítomny v initrd obrazu, který jádro používá při svém zavedení do paměti počítače při startu systému.

V následujícím příkladu jsou vždy 1. a 3. oddíl na pevném disku /dev/hda a /dev/sda určen pro sestavení RAID pole:

$ fdisk -l /dev/hda

Disk /dev/hda: 120.0 GB, 120060444672 bytes
255 heads, 63 sectors/track, 14596 cylinders
Units = cylindry of 16065 * 512 = 8225280 bytes

 Zařízení Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        2433    19543041   fd  Linux raid autodetect
/dev/hda2            2434        2677     1959930   82  Linux swap / Solaris
/dev/hda3            2678       14593    95715270   fd  Linux raid autodetect
$ fdisk -l /dev/sda

Disk /dev/sda: 120.0 GB, 120060444672 bytes
255 heads, 63 sectors/track, 14596 cylinders
Units = cylindry of 16065 * 512 = 8225280 bytes

 Zařízení Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        2433    19543041   fd  Linux raid autodetect
/dev/sda2            2434        2677     1959930   82  Linux swap / Solaris
/dev/sda3            2678       14593    95715270   fd  Linux raid autodetect

Vytvoření pole

Pole se vytváří vždy v degradovaném stavu (neplatí pro RAID 0), takže okamžitě po vytvoření je zahájena rekonstrukce pole. Parametr -l určuje typ RAID pole (0, 1, 5, 6 apod.), parametr -n určuje počet prvků pole. Jednotlivé prvky pole musí být poté vyjmenovány:

# vytvoření RAID 0
mdadm -C /dev/md1 -l0 -n2 /dev/hda3 /dev/sda3
# vytvoření RAID 1
mdadm -C /dev/md1 -l1 -n2 /dev/hda3 /dev/sda3
# vytvoření RAID 5
mdadm -C /dev/md1 -l5 -n3 /dev/hda3 /dev/sda3 /dev/sdb3

Pokud při vytvoření pole nedodáme všechny potřebné části, vytvoří se také, ale zůstane v degradovaném stavu.

Vytvoření souborového systému

Na vytvořeném poli je možné vytvořit souborový systém. Není nutné čekat, až proběhne rekonstrukce pole. Příkaz tune2fs vypíná automatické kontroly souborového systému, aby je mohl administrátor naplánovat na vhodnou dobu, kdy nebude neočekávaně prodloužen restart systému.

mkfs -t ext3 -j /dev/md1
tune2fs -c0 -i0 /dev/md1

V případě vytváření souborového systému pro běžnou instalaci (tj. cca 30 GB) je možné nechat počet vytvořených inodů na příkazu mkfs. V případě, že vytváříme souborový systém pro domácí adresáře, ve kterých nebude mnoho malých souborů, je možné počet inodů zmenšit (přepínačem -N). Kontrola pomocí příkazu fsck pak probíhá mnohem rychleji. Tuto negativní vlastnost odstraňuje systém souborů ext4.

V případě polí s prokládanou strukturou (např. RAID 5 nebo 6) může mít vliv na výkonnost pole parametr stride, který je závislý na velikosti chunku u vytvořeného pole. Cílem je, aby aktualizace obsahu souborového systému nezasahovala do sousedního chunku pole, protože by se zbytečně zvýšil počet nutných I/O operací.

Pole s vytvořeným souborovým systém lze připojit do systému (a zkontrolovat kapacitu):

mount /dev/md1 /adresář
df -h

Degradované pole

V případě problémů s diskem ho jádro automaticky označí jako F (failed) nebo ho rovnou z pole vyřadí (remove). Tím se pole dostane do degradovaného stavu.

Disk lze z pole vyřadit také ručně. Nejprve ho označíme jak failed (volba -f) a pak ho z pole teprve odstraníme (remove, volba -r). Pole bude dál pokračovat v degradovaném režimu:

mdadm /dev/md1 -f /dev/sda3
mdadm /dev/md1 -r /dev/sda3

Nechceme-li již odstraněný prvek pole používat, je nutné smazat informace v superbloku pole, aby si takového oddílu jádro již nevšímalo. Při použití tohoto příkazu musí být oddíl z pole předem vyřazen (viz výše):

mdadm --zero-superblock /dev/sda3

Rekonstrukce degradovaného pole

Pokud do degradovaného pole doplníme chybějící disk (tzv. hot-add), začne automaticky jeho rekonstrukce:

mdadm /dev/md1 -a /dev/sda3

Postup rekonstrukce lze sledovat v souboru /proc/mdstat (viz výše). Rekonstrukce pole je odložena (DELAYED), pokud by měla probíhat na stejném disku, na kterém již nějaká rekonstrukce běží. Po dokončení aktivní rekonstrukce je automaticky zahájena odložená rekonstrukce.

Zastavení pole

Pole lze zastavit pouze v případě, že se nepoužívá (nesmí být připojeno příkazem mount):

mdadm -S /dev/md1

Sestavení pole

Chceme-li zastavené pole znovu spustit a zachovat data, musí být jen sestaveno (ne tedy vytvořeno, jak je uvedeno výše). K tomu slouží příkaz, kterému parametrem -m sdělíme, pro jaké Preferred minor number má hledat oddíly (v optimálním případě je číslo shodné s číslem MD zařízení, tj. zde pro md1 je zřejmě Preferred minor number též 1):

mdadm -A /dev/md1 -m1

Pole lze sestavit i v degradovaném stavu, avšak je nutné přidat parametr --run:

mdadm -A /dev/md1 -m1 --run

Preferred minor number lze také zjistit dotazem na příslušný oddíl, který chceme aktivovat. Následující příkaz vypíše informace z MD superbloku na prvním oddíle prvního disku v systému:

mdadm -E /dev/sda1

Pole lze místo sestavení (parametr -A) také znovu vytvořit (parametr -C, viz výše), avšak rekonstrukce špatně sestaveného pole může poškodit data. V takovém případě vytváříme pole tak, aby nebylo kompletní a rekonstrukci zahájíme až po ověření, že bylo pole správně sestaveno (používá se například u pole RAID 5, na kterém havarovaly dva disky a pokoušíme se zachránit data).

Zjištění vlastností pole

Vlastnosti pole lze zjistit několika různými způsoby:

mdadm -D /dev/md0
mdadm -Q --detail /dev/md0

V obou případech je zobrazeno například toto:

/dev/md0:
        Version : 00.90.01
  Creation Time : Thu Mar 12 01:34:06 2009
     Raid Level : raid1
     Array Size : 39086016 (37.28 GiB 40.02 GB)
    Device Size : 39086016 (37.28 GiB 40.02 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent 

    Update Time : Tue Jul 21 10:55:23 2009
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : ae074243:b857e8b6:85943576:cab70855
         Events : 0.13454779

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       8       17        1      active sync   /dev/sdb1

Ve výše uvedeném výpisu je vypsána informace o poli typu RAID1 (zrcadlo), které se skládá ze dvou oddílů (/dev/sda1, /dev/sdb2), jejich major-minor čísla jsou 8-1 a 8-17 (tj. čísla speciálních zařízení jednotlivých jednotlivých oddílů). Preferované minor number pole je 0 (nula), takže je pole automaticky sestaveno jako /dev/md0. Položka update time je používána při sestavování pole, kdy je potřeba zjistit, které členy pole obsahují platná data (novější záznam o poslední aktualizaci pole). Pokud jsou tedy u dvou členů zrcadla (RAID1) časy různé, použije se při sestavení pouze novější člen a starší člen je poté nutno s polem synchronizovat (viz kapitola Rekonstrukce degradovaného pole).

Výše uvedené informace se zapisují do superbloku každého členu pole (dříve se superbloky nepoužívaly, takže bylo například obtížné pole po změně zapojení disků správně složit). Informace o poli musí být konzistentní ve všech členech pole. Z jednotlivých členů pole lze informace jednotlivě zjistit pomocí příkazu:

mdadm -Q --examine /dev/sda1

Ve výstupu příkazu je obdobná tabulka jako je uvedena výše. Navíc je vyznačeno, jakého člena pole jsme se zeptali.

Změna preferovaného minor number

V superbloku pole je zaneseno preferované minor number, se kterým je pole sestaveno. Tj. pro minor number 0 (nula) je vytvořeno zařízení /dev/md0. Někdy je potřeba, aby se pole automaticky sestavilo pod jiným názvem zařízení (například 1, tj. /dev/md1). V některých případech aktualizuje záznamy samo jádro, avšak obvykle je nutné změnit je ručně. Pole v takovém případě sestavíme s parametrem --update=super-minor, který aktualizaci záznamů zajistí v okamžiku sestavení pole:

mdadm -A /dev/md1 -m0 --update=super-minor

Ve výše uvedeném příkazu je sestaveno pole jako /dev/md1, i když by automaticky bylo sestaveno jako /dev/md0. Pole je sestaveno z prvků, které mají preffered minor number nastaven na nulu (podle parametru -m0). Další automatické sestavení proběhne jako /dev/md1, protože při sestavení se aktualizoval prefered minor number (viz parametr --update=super-minor).

Změna velikosti pole

Pro změny v organizaci pole slouží parametr -G (režim grow). Nestačí-li nám již místo na disku, můžeme jeden starý disk vyměnit za nový, opět spustit počítač, vytvořit na novém disku větší oddíly a přidat je do existujícího pole. Proběhne rekonstrukce, avšak pole zůstane v původní velikosti (pole nevyužije větší oddíl celý). Vyměníme druhý starý disk za nový, vytvoříme na něm oddíly a znovu spustíme rekonstrukci. V tomto okamžiku máme k dispozici kompletní pole, které je menší, než umožňují vytvořené oddíly. Takové pole lze snadno zvětšit příkazem:

mdadm -G /dev/md1 --size max

Ve zbytku pole automaticky proběhne rekonstrukce, která zajistí identický obsah nové oblasti. V tuto chvíli již můžeme zvětšit souborový systém, který se na poli nachází. Podporuje-li použité jádro zvětšování za provozu (online-resize), není potřeba souborový systém odpojovat a stačí pouze zadat příkaz:

ext2online -C0 /dev/md1

V případě, že zvětšujeme souborový systém a jádro online změnu velikosti nepodporuje, je nutné souborový systém nejprve odpojit, pak změnit velikost a poté znovu připojit. Při odpojování je nutné, aby byly ukončeny všechny programy, které mají na zmíněném souborovém systému otevřené soubory (vypíše je příkaz lsof):

lsof /dev/md1
umount /dev/md1
resize2fs -p /dev/md1
mount /dev/md1

Odstranění metadat pole

Metadata jsou zapsána na oddíl při vytváření pole. Pokud je potřeba, aby pole již nebylo automaticky detekováno, je možné následujícím příkazem metadata odstranit (vynulovat):

mdadm --zero-superblock /dev/sda1

Monitorování stavu pole

Nástroj mdadm umožňuje monitorovat stav pole a v případě, že dojde k rozpadnutí pole (které však může dále pokračovat v činnosti), odešle upozornění administrátorovi systému. Administrátor se obvykle pokusí zahájit rekonstrukci pole pouhým přidáním vypadlého oddílu znovu do pole (viz výše), případně musí vyměnit vadný disk, vytvořit znovu oddíly a teprve pak pole nechat zrekonstruovat.

Nejprve připravíme konfigurační soubor /etc/mdadm.conf, ve kterém by mělo být alespoň:

DEVICE partitions
MAILADDR root

V RHEL je pro monitorování k dispozici skript, který spustí hlídacího démona. Druhým příkazem démona necháme automaticky spouštět při startu systému:

 /etc/init.d/mdmonitor start
 chkconfig mdmonitor on

Pokud nastavíme systém tak, jak je uvedeno výše, přijde administrátorovi systému pouze jeden mail, který oznámí problém v poli (přechod do degradovaného stavu). Pokud bychom chtěli být informováni opakovaně, lze vytvořit skript, který se bude spouštět periodicky každou hodinu (analogicky do adresáře /etc/cron.daily, aby byl proveden jen jednou denně):

 echo "/sbin/mdadm --monitor --scan -1" > /etc/cron.hourly/mdmonitor
 chmod +x /etc/cron.hourly/mdmonitor

Čekání na dokončení rekonstrukce

Následující příkaz čeká na dokončení rekonstrukce pole a poté vrátí návratový kód odpovídající výsledku operace (pouze novější verze mdadm):

mdadm -W /dev/md0

Spolupráce s LVM

Jednotlivá vytvořená pole jsou často používána jako stavební prvky pro LVM (viz LVM v Linuxu, tzv. PV). LVM umožňuje plynule za chodu systému zvyšovat kapacitu, snadno migrovat souborový systém na nové disky, vytvářet snímky atd.

Význam dmraid

Jádro implementuje tzv. dmraid, což jsou pole, která se vytvářejí pro tzv. softwarové řadiče RAID (často obsažené na základních deskách). Pro jejich správu slouží speciální příkaz dmraid. Pro svoji činnost používá dm zařízení (obdoba LVM v Linuxu). Obecně nelze dmraid doporučit, protože má proti výše popisovaným md zařízením omezené možnosti. Sofwarový RAID řadič obvykle nijak nezlepšuje práci s jednotlivými disky, poskytuje pouze informace o složení a konfiguraci jednotlivých polí, která je uložena v nevolatilní paměti řadiče.

Řešené příklady

Vytvoření pole RAID1

Nejprve je nutné vytvořit oddíly, ze kterých bude pole sestaveno. Aby bylo možné pole automaticky sestavit při restartu počítače ještě před spuštěním startovacích skriptů, je nutné použít jako prvky pole standardní oddíly (partition), které budou označeny identifikátorem fd (typ Linux raid autodetect) a na nich se vytvoří persistent superblok. Pole bude vytvořeno na nových discích /dev/sdc a /dev/sdd. Nejprve vytvoříme oddíly přes celé disky a nastavíme jejich označení na fd:

 fdisk /dev/sdc
 fdisk /dev/sdd

Následně vytvoříme pole RAID1 a zkontrolujeme jeho stav výpisem souboru /proc/mdstat. Nové pole automaticky zahájí rekonstrukci.

 mdadm -C /dev/md1 -l1 -n2 /dev/sdc1 /dev/sdd1
 cat /proc/mdstat

Souborový systém lze vytvořit již v době, kdy běží rekonstrukce. Pokud je vytvářen souborový systém ext3, na kterém budou spíše větší soubory (například domácí adresáře pro sdílení pomocí Samby), je vhodné pomocí parametru -N snížit počet vytvářených inodů, protože pak rychleji proběhne kontrola disku příkazem fsck. Počet inodů musí být přiměřený, protože když dojdou volné inody, tak není možné vytvářet další soubory, i když je na disku volné místo (v datových blocích – viz příkaz df). Počet inodů není nutné snižovat, pokud je použit souborový systém ext4. Příkaz tune2fs vypíná automatické periodické kontroly souborového systému (ne že by nebyly potřeba, ale lze je vhodně naplánovat a nebudou tak zdržovat neplánovaný restart systému).

 mkfs -t ext3 -j /dev/md1
 tune2fs -c0 -i0 /dev/md1

Poté vytvoříme adresář (mkdir), do něj souborový systém připojíme (mount) a zkontrolujeme jeho kapacitu (df):

 mkdir /mnt/test
 mount /dev/md0 /mnt/test
 mount
 df -h

Rekonstrukce degradovaného pole

Když dojde při práci s polem k chybě při práci s diskem, je právě používaný oddíl označen jako selhaný (failed, písmeno „F“) a pole se přepne do degradovaného stavu. Pokud je systém dobře nakonfigurován, správce o tom dostane zprávu (typicky e-mailem). Stav lze zkontrolovat ve výpisu soubor /proc/mdstat:

$ cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sda1[2](F) sdb1[1]
      30716160 blocks [2/1] [_U]

unused devices: <none>

Ve výše uvedeném výpisu je v poli md0 označen oddíl /dev/sda1 jako selhaný (písmeno „F“), přičemž se jedná o druhý člen pole (číslo 2 v hranatých závorkách). Stav disku je též na dalším řádku výpisu schematicky znázorněn podtržítkem (písmeno „U“ znamená „UP“, tj. funkční, podtržítko označuje nefunkční člen pole). Disk nemusí být vadný, často se stává, že došlo jen k dočasné chybě (například pokud má disk více oddílů, přičemž ostatní oddíly jsou funkční). Nejsnadněji lze zjistit stav disku příkazem smartctl (viz článek Monitorování disků (S.M.A.R.T.)):

smartctl -a /dev/sda

Někdy disk jen „odpadne“, takže s ním nelze komunikovat. V tom případě může stačit jen restart systému nebo úplné vypnutí a pak zapnutí počítače. Je-li disk funkční, lze i bez restartu jen pole nechat znovu zrekonstruovat. Nejprve je však nutné selhaný oddíl z pole odstranit („remove“):

mdadm /dev/md0 -r /dev/sda1

Pak je možné oddíl znovu do pole zařadit. Pokud by disk nekomunikoval nebo komunikoval chybně, rekonstrukce selže a oddíl bude opět označen jako selhaný (písmeno „failed“), což nebude mít na činnost pole žádný vliv. Volný (nepoužívaný) oddíl lze do pole začlenit příkazem:

mdadm /dev/md0 -a /dev/sda1

Rekonstrukci pole lze sledovat v souboru /proc/mdstat, průběžně pak pomocí příkazu watch (příkaz každé dvě vteřiny provede příkaz zadaný jako parametr, přerušit ho lze kombinací kláves CTRL+c):

watch cat /proc/mdstat

Výstup může vypadat například takto:

Every 2,0s: cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sda1[2] sdb1[1]
      30716160 blocks [2/1] [_U]
      [>....................]  recovery =  0.5% (167936/30716160) finish=6.0min speed=83968K/sec

Externí odkazy