Dlaczego mój RAID / dev / md1 wyświetla się jako / dev / md126? Czy plik mdadm.conf jest ignorowany?

26

Stworzyłem RAID z:

sudo mdadm --create --verbose /dev/md1 --level=mirror --raid-devices=2 /dev/sdb1 /dev/sdc1
sudo mdadm --create --verbose /dev/md2 --level=mirror --raid-devices=2 /dev/sdb2 /dev/sdc2

sudo mdadm --detail --scan zwraca:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

Do którego dołączyłem /etc/mdadm/mdadm.conf, patrz poniżej:

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays

# This file was auto-generated on Mon, 29 Oct 2012 16:06:12 -0500
# by mkconf $Id$
ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat zwraca:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md2 : active raid1 sdb2[0] sdc2[1]
      208629632 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md zwraca:

brw-rw----   1 root disk      9,   1 Oct 30 11:06 md1
brw-rw----   1 root disk      9,   2 Oct 30 11:06 md2

Więc myślę, że wszystko jest dobrze i restartuję się.


Po ponownym uruchomieniu / dev / md1 to teraz / dev / md126, a / dev / md2 to teraz / dev / md127 ?????

sudo mdadm --detail --scan zwraca:

ARRAY /dev/md/ion:1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md/ion:2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat zwraca:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md126 : active raid1 sdc2[1] sdb2[0]
      208629632 blocks super 1.2 [2/2] [UU]

md127 : active (auto-read-only) raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md zwraca:

drwxr-xr-x   2 root root          80 Oct 30 11:18 md
brw-rw----   1 root disk      9, 126 Oct 30 11:18 md126
brw-rw----   1 root disk      9, 127 Oct 30 11:18 md127

Nie wszystko stracone, ja:

sudo mdadm --stop /dev/md126
sudo mdadm --stop /dev/md127
sudo mdadm --assemble --verbose /dev/md1 /dev/sdb1 /dev/sdc1
sudo mdadm --assemble --verbose /dev/md2 /dev/sdb2 /dev/sdc2

i zweryfikuj wszystko:

sudo mdadm --detail --scan zwraca:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat zwraca:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md2 : active raid1 sdb2[0] sdc2[1]
      208629632 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md zwraca:

brw-rw----   1 root disk      9,   1 Oct 30 11:26 md1
brw-rw----   1 root disk      9,   2 Oct 30 11:26 md2

Więc jeszcze raz myślę, że wszystko jest w porządku i restartuję się.


Ponownie, po ponownym uruchomieniu, / dev / md1 to / dev / md126, a / dev / md2 to / dev / md127 ?????

sudo mdadm --detail --scan zwraca:

ARRAY /dev/md/ion:1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md/ion:2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat zwraca:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md126 : active raid1 sdc2[1] sdb2[0]
      208629632 blocks super 1.2 [2/2] [UU]

md127 : active (auto-read-only) raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md zwraca:

drwxr-xr-x   2 root root          80 Oct 30 11:42 md
brw-rw----   1 root disk      9, 126 Oct 30 11:42 md126
brw-rw----   1 root disk      9, 127 Oct 30 11:42 md127

Czego tu brakuje?

mmorris
źródło

Odpowiedzi:

26

Znalazłem odpowiedź tutaj, RAID zaczyna się od md127 zamiast md0 . Krótko mówiąc, pokroiłem definicje /etc/mdadm/mdadm.conf z:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

do:

ARRAY /dev/md1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

i prowadził:

sudo update-initramfs -u

Jestem daleko od eksperta w tej sprawie, ale moje rozumienie jest to ...

Jądro złożyło tablice przed wystąpieniem normalnego czasu montażu tablic. Kiedy jądro składa tablice, nie używa mdadm.conf. Ponieważ partycje zostały już zmontowane przez jądro, normalny zestaw tablic, który używa mdadm.conf został pominięty.

Wywołanie sudo update-initramfs -uinformuje jądro, aby ponownie spojrzało na system, aby dowiedzieć się, jak uruchomić.

Jestem pewien, że ktoś z lepszą wiedzą poprawi mnie / opracuje na ten temat.

Użyj następującego wiersza, aby zaktualizować initrd dla każdego odpowiedniego jądra, które istnieje w twoim systemie:

sudo update-initramfs -k all -u
mmorris
źródło
3
Tak, w rzeczywistości odtworzyłoby to initrd dla jądra i zawierało pliki konfiguracyjne odpowiednie dla konfiguracji MD-RAID. Oznacza to, że w momencie tworzenia urządzeń jądro będzie wiedział, jak je nazwać zgodnie z ustawieniami. Dobry chwyt +1 ... btw: zauważyłem, że jest to również wyjaśnione w powiązanym temacie forum.
0xC0000022L
Hej, ta odpowiedź rozwiązała problem powolnej inicjalizacji RAID w moim systemie Arch Linux. Uruchomienie macierzy RAID0 zajęłoby 5 sekund podczas uruchamiania. Po zmianie mdadm.conf zgodnie z opisem i uruchomieniu mkinitcpio zajmuje to mało czasu!
rep_movsd,
Nie można bez tego uruchomić systemu Ubuntu 12.04 (Mint 13). Nie mogłem nawet zmusić mojego roota FS do zamontowania z powłoki initramfs. Wystąpiło mnóstwo błędów liniowych dm i błędów „złego superbloku” podczas próby zamontowania. Upewniłem się również, że zmieniłem nazwę mojego urządzenia md0 na 0, a urządzenia md1 na 1. Nie wiem, czy to również było potrzebne.
cmcginty
6
sudo update-initramfs -u

było wszystkim, czego potrzebowałem, aby to naprawić. Nie edytowałem niczego w /etc/mdadm/mdadm.conf.

ajaaskel
źródło
0

Udało mi się odtworzyć problem w następujący sposób:

Kiedy „Software Updater” zapytał, czy chcę zaktualizować pakiety (w tym bazę Ubuntu i jądro), powiedziałem: OK. Nowo zainstalowane jądro używało ustawień bieżącego jądra / systemu. Następnie utworzyłem tablicę. Tylko zaktualizowane jądro zostało zaktualizowane z nowymi ustawieniami RAID. Po ponownym uruchomieniu, nowe jądro nie wiedziało nic o nalocie i nadało mu nazwę md127!

Angelos Vassiliou
źródło