为什么我的RAID / dev / md1显示为/ dev / md126?mdadm.conf是否被忽略?


26

我创建了一个RAID:

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 返回:

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

我将其附加到/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

# 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 返回:

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 返回:

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

因此,我认为一切都很好,然后重新启动。


重新启动后,的/ dev / MD1现在的/ dev / md126和/ dev / MD2现在的/ dev / md127 ?????

sudo mdadm --detail --scan 返回:

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 返回:

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 返回:

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

一切都不会丢失,我:

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

并验证所有内容:

sudo mdadm --detail --scan 返回:

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 返回:

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 返回:

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

因此,我再次认为一切都很好,然后重新启动。


再次,在重新启动后,的/ dev / MD1 IS 的/ dev / md126和/ dev / MD2 IS 的/ dev / md127 ?????

sudo mdadm --detail --scan 返回:

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 返回:

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 返回:

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

我在这里想念什么?

Answers:


26

我在这里找到了答案,RAID从md127而不是md0开始。简而言之,我从以下位置切碎了/etc/mdadm/mdadm.conf定义:

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

至:

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

并运行:

sudo update-initramfs -u

我很,从这方面的专家,但我的理解是这样的......

内核在正常时间之前对阵列进行了组装。当内核汇编数组时,它不使用mdadm.conf。由于分区已由内核组装,因此跳过了使用mdadm.conf的常规数组组装。

调用sudo update-initramfs -u告诉内核再次查看系统,以了解如何启动。

我敢肯定,有更好知识的人会纠正我/对此进行详细说明。

使用以下行来更新系统上存在的每个内核的initrd:

sudo update-initramfs -k all -u

3
是的,实际上,这将为内核重新创建initrd并包括与MD-RAID配置相关的配置文件。这意味着在创建设备时,内核将知道如何根据您的设置命名它们。接得好。+1 ... btw:请注意,在链接的论坛主题中也对此进行了说明。
0xC0000022L13年

嘿,这个答案解决了我的Arch Linux系统上的RAID初始化缓慢问题。引导时需要5秒才能启动并运行RAID0阵列。按照说明更改mdadm.conf并运行mkinitcpio之后,花费的时间可以忽略不计!
rep_movsd

没有这个,就无法启动Ubuntu 12.04(Mint 13)。我什至无法从initramfs shell挂载根FS。尝试安装时出现了许多dm-linear错误和“ bad superblock”错误。我还确保将md0设备重命名为0,将md1设备重命名为1。我不知道是否也需要这样做。
cmcginty 2014年

6
sudo update-initramfs -u

是我所需要解决的全部。我没有在/etc/mdadm/mdadm.conf中进行任何编辑。


1

我遇到过同样的问题。

此解决方案解决了我的问题:http ://aubreykloppers.wordpress.com/2012/07/06/mdadm-devmd127/


4
欢迎来到Ask Ubuntu。请在答案中包括链接中的相关步骤。
2014年

0

我设法通过以下方式复制了该问题:

当“ Software Updater”问我是否要更新软件包(包括Ubuntu base)和内核时,我说:OK。新安装的内核使用了当前内核/系统的设置。然后我创建了阵列。只有当前正在运行的内核得到了更新。重新启动后,新内核对raid一无所知,并为其命名为md127!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.