Jeden člověk mi stále říká, že bychom neměli používat mdadm --create
obnovit naše pole RAID, že je to horší než zlo, je chyba. proč tomu tak je? Myslím tím, že bych měl svůj RAID znovu zprovoznit, ne? Co bych měl použít místo toho, když --create
je chyba?
Přijatá odpověď:
Na --create
není nic špatného – pokud víte, co děláte.
Jediný problém je:Nevíte.
Když vytvoříte pole RAID, příkaz je obvykle krátký, například:
mdadm --create /dev/md42 --level=5 --raid-devices=3 /dev/sdx1 /dev/sdy1 /dev/sdz1
Úplně jednoduché, že?
Až na to, že není, opravdu. RAID má mnohem více proměnných. K dispozici je posun dat, velikost bloku, verze metadat a nezapomínejme na pořadí jednotek, které lze snadno pokazit při opětovném vytvoření, protože písmena jednotek se mohou v průběhu času měnit.
Zde je to, co správné --create
příkaz může místo toho vypadat:
mdadm --create /dev/md42 --assume-clean
--level=5 --chunk=512K --metadata=1.2 --data-offset=2048s
--raid-devices=3 /dev/sdz1 missing /dev/sdy1
A cokoli vám to dá, měli byste to otestovat pouze pro čtení. A to nemusí být vše. Věděli jste, že existuje také několik různých rozložení RAID? --create
je úplně poslední kapkou a úskalí nejsou zřejmá. V ideálním případě byste měli zálohovat všechny disky nebo alespoň oblasti metadat nebo pracovat s překryvnou vrstvou kopírování při zápisu.
Za cokoli, co neposkytnete, mdadm
používá výchozí nastavení. Bohužel ty nejsou vytesány do kamene, v podstatě všechny se změnily v minulosti a pravděpodobně se znovu změní v budoucnu.
Takže když použijete --create
pro obnovu musíte RAID opravdu dobře rozumět a musíte vědět, jak váš starý RAID přesně vypadal. A pak musíte přidat --assume-clean
nebo ponechte jeden z disků jako missing
, jen pro případ, že by ses stejně spletl. Měli byste si také vytvořit zálohu, alespoň začátek a konec disku, abyste se mohli obnovit z metadat zapsaných do nesprávného umístění.
Ve většině případů máte jiné možnosti. --assemble --force
je jeden, ale má svá úskalí. Měli byste --examine
za prvé, a pokud je jeden z disků zastaralejší než ostatní, neměli byste jej zahrnout do sestavy. Existuje také --build
stejně jako dmsetup
pro raid, který nepoužívá metadata a může vám umožnit přístup k vašim datům. To však neznamená, že je bezpečný – píšete na něj a v případě nesprávného nastavení ztratíte data.
Obecně je obnova dat širokým oborem. K tomu, abyste se mohli rozhodnout pro správný postup, potřebujete zkušenosti. Vyhněte se problému, pokud je to možné; zálohujte, zdokumentujte nastavení a sledujte své disky, aby váš RAID nezemřel.