GNU/Linux >> Znalost Linux >  >> Linux

Mám použít `mdadm –create` k obnovení nájezdu?

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.

Související:Správná syntaxe pro použití awk v kombinaci s jiným příkazem uvnitř xargs sh –c?

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.


Linux
  1. Jak používat Linuxový příkaz grep

  2. Jak používat příkaz basename?

  3. Zkontrolujte používanou verzi Wordpressu

  1. Jak používat příkaz historie v Linuxu

  2. Jak používat dos2unix?

  3. Jaké je použití $# v Bash

  1. Používejte plochu Window Maker v systému Linux

  2. Jak používat příkaz historie Linuxu

  3. Jak používat příkaz Bash read