Znikający raid na nowym Ubuntu

jjb

2022/10/21

Categories: informatyka Linux Tags: raid Ubuntu mdadm GPT

Table of Contents

Znikający raid na nowym Ubuntu

Parę dni fustracji przeżył kolega informatyk, tocząc nierówną walkę z linuksową dystrybucją Ubuntu. Otóż serwer (Supermicro płyta główna X11DAi, 1xSSD 500GB, 4x1TB HDDz Intelową kartą raid), który działał przyzwoicie przez parę miesięcy nie podniósł się po podniesieniu wersji.

Nie był to jakiś koszmarny upgrade, standardowy, nad którym się zwykle nie pochylamy, zmiana podwersji na Ubuntu 20.4.1 Desktop. Okazało się jednak, że pomimo niezmienionych ustawień na poziomie BIOS-u nowa wersja widziała już pojedyncze dyski, żadnego wolumenu raidowego nie miała zamiaru dostrzec.

Po różnych próbach kolega stwierdził, że w takim razie wykorzysta raid softwarowy i złożył go z pomocą mdadm.

Bardzo ładnie to zadziałało, dało się ten wolumen partycjonować, zrobić na nim system plikowy, zamontować… Właściwie po paru dniach irytacji coś drgnęło. Ale okazało się, że to nie koniec kłopotów. Otóż po restarcie systemu ślad po raidowym wolumenie znikał.

Nie pomagały szamańskie działania typu wpis do /etc/mdadm.conf. Zachowanie typu było - i nie ma. Jak w ruskim cyrku.

Podesłał mi historie poleceń, wszystko było w porządku, na systemach Centos/Mageia/SuSE takie rzeczy robiłem wielokrotnie, zawsze działało poprawnie.

Tak mnie tknęło, że być może jest problem z obsługą tablicy partycji na dyskach bowiem po restarcie nic nie zostawało. Pojawia się niektórym konstruktorom w głowie taka myśl, że MBR jest właściwie “obsolete” i trzeba używać tablicy GPT. W takim razie powinno zadziałać ręczne zrobienie partycji raidowej za pomocą gdisk i odwołanie się przy tworzeniu dysku raidowego do konkretnych, utworzonych partycji, a nie do całych dysków.

Zadziałało. Po restarcie raid funkcjonował.

W systemie były cztery dyski przewidziane na wolumen raidowy, /dev/sda do /dev/sdd.

gdisk /dev/sda

Tworzymy nową partycję, w tym przypadku na domyślnych ustawwieniach (od sektora 2048 do końca) i znakujemy, jako typ raid (0xFD00). Oczywiście podręczne menu pozwala wybrać opis dostepnych typów.

Co prawda: From the mdadm 2.6.8 man-page) When creating partition-based arrays using mdadm and version-1.x superblocks, the partition type should be set to 0xDA (non fs-data). This type selection allows for greater precision since using any other type [RAID auto-detect (0xFD) or a GNU/Linux partition (0x83)], might create problems in the event of array recovery through a live cdrom - ale nie mamy odpowiednika 0xDA dla tablicy typu GPT. Partition Types - Linux Raid Wiki

Teraz poleceniem mdadm dysk raid md0:

mdadm --create --verbose /dev/md0 --level=5--raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1

I to właściwie wszystko. Z resztą działań problemów nie było, skoro raid podnosił się po starcie to zapisy w /etc/fstab nie sprawiały problemów.

>> Home