Vždy musím pustit mdadm --assemble

iko

  • ***
  • 146
    • Zobrazit profil
    • E-mail
Vždy musím pustit mdadm --assemble
« kdy: 15. 08. 2018, 13:55:00 »
zdravim

kde ma fedora nejaky pokec o sw raide? Po kazdom reboote musim pustat mdadm --assemble..., aby som ho videl. Druhy raid, ktory bol robeny v  instalatore ide normalne.

V /etc/mdadm.conf mam len
Kód: [Vybrat]
# mdadm.conf written out by anaconda
MAILADDR root
AUTO +imsm +1.x -all
« Poslední změna: 15. 08. 2018, 22:31:30 od Petr Krčmář »


Pavouk106

  • *****
  • 2 395
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:vzdy musim pustit mdadm --assemble
« Odpověď #1 kdy: 15. 08. 2018, 14:21:02 »
To je zvláštní. mdadm.conf by teoreticky něml být potřeba na automatické (!) složení pole. Pole by mělo složit jádro systému samo podle info, které si samo z oddílů vyčte.

Druhý raid se Ti složí, takže jádro to zjevně dělá správně...

Ten složený ručně (--assemble) - je v pořádku? Není jeden disk vyhozený? Nebo nedělá zrovna rebuild?

Re:vzdy musim pustit mdadm --assemble
« Odpověď #2 kdy: 15. 08. 2018, 16:17:58 »
Nemáš náhodou druhy RAID vytvořený s metadatama 0.90?

Marian

Re:vzdy musim pustit mdadm --assemble
« Odpověď #3 kdy: 15. 08. 2018, 19:00:29 »
mne sa nieco podobne dialo na debiane a tak matne si spominam ze som to fixol zmenou configu v initramfs

Jimmm

Re:vzdy musim pustit mdadm --assemble
« Odpověď #4 kdy: 15. 08. 2018, 19:16:19 »
mdadm --detail --scan >> /etc/mdadm/mdadm.conf


Re:vzdy musim pustit mdadm --assemble
« Odpověď #5 kdy: 15. 08. 2018, 20:23:48 »
MD metadata/superblock ve verzi 0.90 dávala možnost, aby kernel sám složil MD RAIDy při prohledávání disků
(bez asistence user-space nástroje mdadm).

Novější verze MD superblocku toto neumožňují, proto se MD RAID skládá pomocí mdadm spouštěného z initial RAMdisku. Tenhle krok není plně automatický ("nahoď všechny MD svazky co najdeš"), vyžaduje mdadm.conf, který je třeba předat skriptu mkinitrd (v Debianu update-initramfs nebo na nižší úrovni mkinitramfs). Stačí mít v systému platný /etc/mdadm.conf, a mkinitrd/mkinitramfs ho převezme. A taky je potřeba, aby v initial RAMdisku byly všechny potřebné moduly. (Debian: /etc/initramfs-tools/modules )

Explicitní start MD svazků pomocí mdadm v initial ramdisku je už asi 10 let v distribucích default. Sice už to postrádá primitivní krásu automatického poskládání polí v režii kernelu, ale je to zjevně cesta kupředu a je už dobře prošlápnutá. Stačí dodržovat pravidla. Modernější verze MD superblocku má své výhody a update initial RAMdisku je vlastně taky dost nezáludný.

Jednou jsem si takhle naběhl na hrábě, které jsem byl sám nechal v trávě válet. Zkompiloval jsem si svůj vlastní kernel, kde jsem měl MD a související ovladače monoliticky. V debianu. A při nějakém dist-upgrade přišel novější distribuční kernel, který měl ovladače jako moduly. Ovšem v /etc/initramfs-tools/modules jsem potřebné MD moduly neměl uvedené. A hrozně jsem se divil, že mi přirozeným způsobem systém nenastartuje (initrd nenajde root volume na MD RAIDu), ale když vnutím boot do rescue režimu, tak mi mdadm --assemble --scan načte všechno. Docela mi trvalo, než jsem zjistil, že systemd za to *fakt nemůže* :-)

Mám matné tušení, že historicky mezi nějakými dvěma verzemi Debianu chyběl po dist-upgradu v initrd modul crc16 nebo co (potřebný pro ovladače MD RAIDu).

iko

  • ***
  • 146
    • Zobrazit profil
    • E-mail
Re:vzdy musim pustit mdadm --assemble
« Odpověď #6 kdy: 16. 08. 2018, 08:31:41 »
Nemáš náhodou druhy RAID vytvořený s metadatama 0.90?
Ten co nejde automaticky je 0.9. Ten co ide sam je 1.2.

Re:vzdy musim pustit mdadm --assemble
« Odpověď #7 kdy: 16. 08. 2018, 08:59:56 »
Nemáš náhodou druhy RAID vytvořený s metadatama 0.90?
Ten co nejde automaticky je 0.9. Ten co ide sam je 1.2.
To chování by právě odpovídalo konfiguraci kterou máš v mdadm.conf
AUTO +imsm +1.x -all
Automatický sestaví RAID typu imsm a s metadatama 1.x a ostatní ne.
Přečti si manuálové stránky na mfadm.conf

Pavouk106

  • *****
  • 2 395
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:vzdy musim pustit mdadm --assemble
« Odpověď #8 kdy: 16. 08. 2018, 15:36:19 »
Ten co nejde automaticky je 0.9. Ten co ide sam je 1.2.
To chování by právě odpovídalo konfiguraci kterou máš v mdadm.conf
AUTO +imsm +1.x -all
Automatický sestaví RAID typu imsm a s metadatama 1.x a ostatní ne.
Přečti si manuálové stránky na mfadm.conf
Tenhle příspěvek už si budu navždy pamatovat. Teď jsem se "naučil" to, co ne za celou dobu, po kterou doma provozuju dvě pole. Díky!