Linux 软件 RAID:--自动检测找到整个驱动器,而不是最后一个分区

Linux 软件 RAID:--自动检测找到整个驱动器,而不是最后一个分区

我的笔记本电脑运行的是 Ubuntu Natty,分区如下:

  • /dev/sda1:500MB,/boot
  • /dev/sda2: 148GB,/

sda2 是具有 1 个设备的软件 RAID1。这是有意为之的——我会定期使用外部驱动器重塑阵列。

正常运行时,数组如下所示:

  • /dev/md0,[sda2]

这一切都很好,除了当我启动时,阵列被检测为:

  • /dev/md127,[sda]

即整个驱动器,而不是分区。我认为这是因为 0.90 元数据格式存储在最后,但是……它肯定存储了开始地址或设备?

mdadm --examine对 /dev/sda 和 /dev/sda2 给出相同的结果;我预计它会在 /dev/sda 上失败,但(再次)我假设这是因为 sda2 的元数据恰好也在 sda 的正确位置。

为什么会自动检测到错误的 RAID 设备?除了重新分区驱动器外,还有什么方法可以防止 sda 被检测为 RAID 阵列?

答案1

您应该能够通过适当地制作条目来防止/dev/sda被检测为阵列设备。具体来说,您可以通过指定如下模式来确保使用分区(如)——并忽略整个驱动器设备(如):DEVICE/etc/mdadm/mdadm.conf/dev/sda2/dev/sdaDEVICE

DEVICE /dev/sd[a-z][1-9]

您还可以提供多个(glob 样式)模式,它们之间可以用空格分隔,也可以用附加DEVICE行分隔。

最后,一定要注释掉/删除mdadm.conf包含的任何行DEVICE partitions,以便 mdadm 不会考虑的内容/proc/partitions

相关内容