Назад | Перейти на главную страницу

Массив RAID-5 разбивается при перезагрузке (ubuntu)

Я установил массив RAID-5 на Ubuntu 13.04 (ядро 3.8.0-27-generic) с помощью mdadm - v3.2.5 - 18 мая 2012 года. Кажется, он работает нормально и в хорошем настроении:

$ cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid5 sdb3[0] sdd1[3] sdc1[1]
      2929994752 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: <none>

Однако при перезагрузке массив разделяется на два отдельных массива, что, как мне кажется, не является веской причиной. При загрузке я получаю подсказку:

*** WARNING: Degraded RAID devices detected. ***
Press Y to start the degraded RAID or N to launch recovery shell

На что я обычно отвечаю «да» и попадаю в оболочку initramfs, из которой немедленно выхожу. Как только я вернусь в систему, мой RAID-массив будет разделен следующим образом:

$ cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : inactive sdb3[0]
      1464997976 blocks super 1.2

md127 : inactive sdc[1] sdd[2]
      2930275120 blocks super 1.2

У меня тоже получилось наоборот:

$ cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md127 : inactive sdb3[0]
      1464997976 blocks super 1.2

md0 : inactive sdc[1] sdd[2]
      2930275120 blocks super 1.2

Хотя sdc и sdd, похоже, образовали некую клику. Я могу легко собрать массив, выполнив:

$ mdadm --stop /dev/md0
$ mdadm --stop /dev/md127
$ mdadm -A /dev/md0 /dev/sdb3 /dev/sdc1 /dev/sdd1 

После этого я могу смонтировать том LVM, который находится на md0, и вести себя так, как будто ничего не произошло (не восстанавливается или что-то еще). Однако мне бы очень хотелось, чтобы мне не приходилось проходить эти шаги. Мой файл mdadm.conf содержит строку:

ARRAY /dev/md0 metadata=1.2 UUID=e8aaf501:b564493d:ee375c76:b1242a82

из которого я сократил имя по совету от это сообщение на форуме. Выполнение детализации и сканирования дает следующее:

$ mdadm --detail --scan
mdadm: cannot open /dev/md/mimir:0: No such file or directory
ARRAY /dev/md0 metadata=1.2 name=turbopepper:0 UUID=e8aaf501:b564493d:ee375c76:b1242a82

Обратите внимание на массив «мимир». Это рудиментарный массив, когда я раньше играл с массивами. Я не знаю, откуда он обнаруживается (его нет в mdadm.conf, и в fstab на него не делается никаких ссылок). Вероятно, его нужно убрать, но я не могу понять, откуда он исходит (на самом деле может быть виноват).

Любая помощь будет принята с благодарностью за то, чтобы массив мог сохраняться после перезагрузки без вмешательства.

На всякий случай, вот еще несколько результатов, которые могут оказаться полезными, а могут и не оказаться.

$ fdisk -l /dev/sdb /dev/sdc /dev/sdd

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x7f0e98a6

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048      499711      248832   fd  Linux raid autodetect
/dev/sdb2          499712   976771071   488135680   fd  Linux raid autodetect
/dev/sdb3       976771072  3907029167  1465129048   fd  Linux raid autodetect

Disk /dev/sdc: 1500.3 GB, 1500301910016 bytes
81 heads, 63 sectors/track, 574226 cylinders, total 2930277168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00052c9c

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048  2930277167  1465137560   fd  Linux raid autodetect

Disk /dev/sdd: 1500.3 GB, 1500301910016 bytes
81 heads, 63 sectors/track, 574226 cylinders, total 2930277168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000bd694

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048  2930277167  1465137560   fd  Linux raid autodetect

Я предполагаю, что причина того, что sdc и sdd вместе во время разделения, заключается в том, что это идентичные диски.

$ cat /etc/mdadm/mdadm.conf
# 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
ARRAY /dev/md0 metadata=1.2 UUID=e8aaf501:b564493d:ee375c76:b1242a82

# This file was auto-generated on Sun, 08 Dec 2013 00:39:01 -0500
# by mkconf $Id$

На одном из ваших разделов, вероятно, на sdb3, все еще есть старый суперблок для массива «mimir», который сканируется mdadm при запуске. Это можно исправить, выполнив

mdadm --zero-superblock /dev/sdb3

а затем считывание раздела в массив.