mdadm RAID 配置在重启时随机更改磁盘 sdXX 命名

mdadm RAID 配置在重启时随机更改磁盘 sdXX 命名

我在 2 个扩展器上构建软件 raid 时遇到了问题,磁盘加载为 JBOD。每次重新启动服务器后,虚拟驱动器的命名都会发生变化,而且阵列编号和逻辑也会分散。例如:

NAME           MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sdu             65:64   0  2.7T  0 disk  
└─md112          9:112  0  8.2T  0 raid5 
  └─md104        9:104  0 24.6T  0 raid0 
sdv             65:80   0  2.7T  0 disk  
└─md127          9:127  0  8.2T  0 raid5 
  └─md105        9:105  0 24.6T  0 raid0 
sdw             65:96   0  2.7T  0 disk  
└─md108          9:108  0  8.2T  0 raid5 
  └─md105        9:105  0 24.6T  0 raid0 
sdx             65:112  0  2.7T  0 disk  
└─md122          9:122  0  8.2T  0 raid5 
  └─md102        9:102  0 24.6T  0 raid0 

重启会变成,下次重启会变成其他内容:

NAME           MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sdu             65:64   0  2.7T  0 disk  
└─md115          9:115  0  8.2T  0 raid5 
  └─md104        9:104  0 24.6T  0 raid0 
sdv             65:80   0  2.7T  0 disk  
└─md115          9:115  0  8.2T  0 raid5 
  └─md104        9:104  0 24.6T  0 raid0 
sdw             65:96   0  2.7T  0 disk  
└─md115          9:115  0  8.2T  0 raid5 
  └─md104        9:104  0 24.6T  0 raid0 
sdx             65:112  0  2.7T  0 disk  
└─md115          9:115  0  8.2T  0 raid5 
  └─md104        9:104  0 24.6T  0 raid0 

最初,名称仅到 md28(简单线性化为 md0 系统磁盘、md1-19 raid5 卷、md22-28 raid0 和 raid 5 卷)

我不知道为什么我现在每次都会得到不同的 md 命名,甚至阵列使用的磁盘也与我配置的磁盘不同,上面是它如何变化的示例,这里我给出了如何构建这个 RAID5 阵列的示例,据称构建

mdadm --create /dev/md6 -v --raid-devices=4 --level=5 /dev/sd[uvwx]

mdadm --create /dev/md23 -v --raid-devices=3 --level=0 /dev/md4 /dev/md5 /dev/md6

/等待恢复完成

mkfs.ext4 -F /dev/md23

mkdir -p /mnt/md23

mount /dev/md23 /mnt/md23

df -h -x devtmpfs -x tmpfs

-此处,在重启之前,我发现一切都正常且已安装,其他所有已配置的磁盘也一样。然后我重启了……

不确定这里发生了什么,可能是控制器/linux 疯了,总是将磁盘重命名为 sdXX,但 mdadm 无论如何都试图保持配置相同,可能是基于 UUID 或其他什么?

或者,如果可能或更好的话,我是否应该在构建时以某种方式使用 UUID?这建议这样做,但在不同的上下文中 mdadm:通过 UUID 配置磁盘 我没有预料到这一点,实际上我很确定 sdXX 命名应该足够了。但当控制器/扩展器和 jbod 到位时可能就不够了 :/

答案1

所以基本上我的答案似乎在我发表在评论中的这个帖子里 https://superuser.com/questions/287462/how-can-i-make-mdadm-auto-assemble-raid-after-each-boot + update-initramfs -u 但要小心,我设法在 mdadm.conf 中创建了 md0 重复,并卡在 initramfs 中,我在那里将其删除。

但问题仍然存在,直到我清除 mdadm.conf 并运行

root@debian:~# mdadm -Es >> /etc/mdadm/mdadm.conf
root@debian:~# update-initramfs -u -v

相关内容