===== После аварийного отключения Linux Software RAID имя устройства mdraid меняется c md0 на md127 ===== {{:unix-linux:linux-software-raid:pasted:20180619-095346.png }} В некоторых нештатных ситуациях может получиться так, что после некорректного завершения работы Linux-системы или при внезапном временном отключении дисков, из которых собран RAID-массив **Linux Software RAID** (**mdraid**), имя массива (устройство mdraid) меняется с ранее назначенного, например **md0**, на имя **md127**. В этой заметке мы рассмотрим пример того, как исправить эту ситуацию и вернуть прежнее имя RAID-массива. В нашем примере в системе имеется RAID-массив уровня RAID-6 из 4-дисков. При создании массива, ему было назначено имя **md0**. После некорректного выключения системы массив изменил своё имя на **md127**
# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] md127 : active (auto-read-only) raid6 dm-9[2] dm-6[0] dm-1[1] dm-7[3] 4882206720 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUUUUUUUUUU] bitmap: 0/4 pages [0KB], 65536KB chunk unused devices: none
Посмотрим на текущее состояние массива и обратим внимание на идентификатор **UUID** (он не меняется при смене имени md-устройства):
# mdadm --detail /dev/md127

/dev/md127: Version : 1.2 Creation Time : Mon Nov 28 21:09:22 2016 Raid Level : raid6 Array Size : 4882206720 (4656.04 GiB 4999.38 GB) Used Dev Size : 488220672 (465.60 GiB 499.94 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sun Dec 25 14:02:36 2016 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 512K Consistency Policy : bitmap Name : 1 UUID : 3161ebbe:a270f3e8:376f17d0:41130125 Events : 12196 Number Major Minor RaidDevice State 0 253 6 0 active sync /dev/dm-6 1 253 1 1 active sync /dev/dm-1 2 253 9 2 active sync /dev/dm-9 3 253 7 3 active sync /dev/dm-7
Останавливаем текущий массив ''/dev/md127'':
# mdadm --stop /dev/md127

mdadm: stopped /dev/md127
Запускаем массив заново, но уже назначив ему желаемое имя:
# mdadm --assemble --update=name --name=0 /dev/md0 /dev/dm-1 /dev/dm-6 /dev/dm-7 /dev/dm-9
mdadm: /dev/md0 has been started with 4 drives.
Проверяем состояние массива с прежним именем:
# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] md0 : active raid6 dm-1[0] dm-6[1] dm-7[2] dm-9[3] 4882206720 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUUUUUUUUUU] bitmap: 0/4 pages [0KB], 65536KB chunk unused devices: none
# mdadm --detail /dev/md0

/dev/md0: Version : 1.2 Creation Time : Mon Nov 28 21:09:22 2016 Raid Level : raid6 Array Size : 4882206720 (4656.04 GiB 4999.38 GB) Used Dev Size : 488220672 (465.60 GiB 499.94 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sun Dec 25 14:02:36 2016 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 512K Consistency Policy : bitmap Name : 0 UUID : 3161ebbe:a270f3e8:376f17d0:41130125 Events : 12196 Number Major Minor RaidDevice State 0 253 5 0 active sync /dev/dm-1 1 253 0 1 active sync /dev/dm-6 2 253 3 2 active sync /dev/dm-7 3 253 4 3 active sync /dev/dm-9
Отредактируем конфигурационный файл **mdadm.conf**, который используется при старте системы, таким образом, чтобы **UUID** массива указывал на нужное нам имя (**md0**). Также обратите внимание на значение ''name=0'' (оно должно соответсвовать тому, что мы указали при перезапуске массива в параметре ''--name=0'' и тому, что мы видим в свойствах массива при выполнении команды ''mdadm --detail /dev/md0'')
# nano /etc/mdadm.conf
DEVICE /dev/dm* DEVICE /dev/mapper/mpath* ARRAY /dev/md0 metadata=1.2 name=0 UUID=3161ebbe:a270f3e8:376f17d0:41130125 MAILADDR DST-Linux-Administrators@holding.com MAILFROM KOM-AD01-FS03@holding.com Пересоберём загрузочный образ системы **initial ramdisk**, так как в его состав включается файл ''/etc/mdadm.conf'' На CentOS для этого выполним команду:
# dracut --force
После этого перезагружаем систему и убеждаемся в том, что RAID-массив запустился с нужным нам именем устройства (''md0''). ---- Дополнительные источники информации: * [[https://superuser.com/questions/346719/how-to-change-the-name-of-an-md-device-mdadm|Stack Exchange : superuser : How-to change the name of an MD device (mdadm)]] ---- Проверено на следующих конфигурациях: ^ Версия ОС ^ Версия mdadm ^ | CentOS Linux release 7.5.1804 (Core) x86_64 | v4.0 - 2017-01-09 | ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 19.06.2018 13:30 {{tag>Linux RAID "Linux Software RAID" mdraid mdadm "Multiple Device" "Disk array" Storage CentOS initrd}} ~~DISCUSSION~~