重启后,md设备的path出错

我必须在Ubuntu服务器12.04上设置软件raid(level1)。 它应该通过Samba在networking中提供文件。 该服务器具有以下磁盘:

  • 250GB的SATA硬盘(Ubuntu安装在该驱动器上)
  • 2 TB Sata hdd(RAIDarrays中的第一张磁盘,数据磁盘)
  • 2 TB SATA硬盘(第二个数据磁盘)

我使用Linux raid autodetecttypes在每个数据磁盘上创build了一个分区。 在第二步中,我使用以下命令创build了raid1:

mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1 

之后,我将数组添加到mdconf中:

 mdadm --examine --scan >> /etc/mdadm/mdadm.conf 

问题是:重新引导后,arrays在path/ dev / md0上不可用。 而不是它重新组装为/ dev / md / 0,但它不是很可靠。 有没有人解决这个问题?

当我记得md0不断作为不同的设备名称来备份。

答案是在设置mdmadm.conf之后,运行update-initramfs -u它基本上将mdmadm.conf复制到初始ramdisk,以便在下一次重新引导后运行。

检查你的/etc/mdadm/mdadm.conf它出现的设备应该在该文件中指定。 您可以对该文件进行更改,并使raid卷不同。 你可能有一个像这样的线

 ARRAY /dev/md/0 metadata=1.2 UUID=7d2bf7e5:dc6edd5c:3ca12e46:8c9e5d4b 

这意味着mdadmin设备/dev/md/0将由所有具有RAID元数据的设备组成,标识为UUID=7d2bf7e5:dc6edd5c:3ca12e46:8c9e5d4b

只要你不改变你的mdadm.conf,当那个RAID卷几乎总是/dev/md/0在我看到的任何发行版上,它都不会改变。

使用新的1.2元数据,您还可以为RAID卷分配一个逻辑名称。

所以在我的系统上,我已经在我的卷上设置了一个名字,并且像这样configuration了我的mdadm.conf。 在我看来,这些逻辑名称使得卷更容易移植到其他系统,而且由于这个名称是作为元数据的一部分存储的,因此,如果给数组赋予有意义的名称,则更容易识别什么是事物。

 ARRAY name=zoredache:3tb-r1-vol1 ARRAY name=zoredache:3tb-r1-vol2 

这些设备是/dev/md/3tb-r1-vol1/dev/md/3tb-r1-vol2