Jak złożyć konkretną macierz RAID bez użycia /etc/mdadm.conf

9

Czy można złożyć konkretną macierz RAID przy użyciu mdadm i funkcji skanowania, ale bez potrzeby pliku konfiguracyjnego?

Tło:
Używam niestandardowego initramfs do konfiguracji mojego systemu (dm-crypt i inne rzeczy). Wszystko jest zrobione i skonfigurowane w skrypcie inicjującym i tak chciałbym to zachować, tzn. Bez żadnych dodatkowych plików konfiguracyjnych.

Mój cel: w
ramach skryptu inicjującego chciałbym złożyć jedną konkretną macierz RAID tylko przy użyciu wiersza polecenia. Tablica jest identyfikowana przez jej UUID, podana jest nazwa urządzenia md, a członkowie tablicy powinni zostać przeskanowani (ponieważ np. Podłączona pamięć USB lub uszkodzone urządzenie może zepsuć nazwy / dev / sdX). Wszystkie inne urządzenia i potencjalne macierze RAID należy zignorować, ponieważ podczas rozruchu interesująca jest tylko jedna tablica (przenosi główny system plików).


Dokładnie czytając stronę podręcznika mdadm i wykonując kilka testów, wymyśliłem:

mdadm --assemble --uuid <uuid> /dev/md0


Wydaje się, że to działa, ale czy to właściwy sposób, aby to zrobić?


Ze strony podręcznika:
Jeśli na liście znajduje się dokładnie jedno urządzenie, ale nie podano --scan, to mdadm działa tak, jakby podano --scan i wyodrębniono informacje o tożsamości z pliku konfiguracyjnego.

maxxim
źródło

Odpowiedzi:

15

Jeśli znasz tablicowy UUID, to mdadm --assemble /dev/md0 --uuid <uuid>(zauważ niewielką różnicę w kolejności parametrów) zrobi to, co chcesz: skanuj wszystkie nieużywane woluminy w poszukiwaniu tych, które mają mdmetadane dla danego UUID. Inne opcje:

  • mdadm --assemble /dev/md0 --name <name>(robi to samo --uuid, ale z nazwą tablicy zamiast UUID).
  • mdadm --assemble /dev/md0 --super-minor <minor id #>(robi to samo --uuid, ale z mniejszymi numerami urządzeń w metadanych. Zalecane tylko dla metadanych w wersji 0.90).
  • mdadm --assemble /dev/md0 /dev/disk/by-id/<disk>...(jeśli udevskonfigurował /dev/disk/by-idaliasy, które powinny być statyczne dla zmian sprzętowych).
  • mdadm --assemble --scanbez tablic wymienionych w pliku konfiguracyjnym (skanuj wszystkie nieużywane woluminy w poszukiwaniu mdmetadanych i składaj tablice RAID w oparciu o znalezione dane. Pamiętaj, że jeśli masz wiele tablic i chcesz skonfigurować tylko jedną z nich, lub jeśli twoja macierz została podzielone, to nie zrobi tego, co chcesz.)
znak
źródło