首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的mdadm行为-在未能创建时,md127会在新创建的部分零分区上出现“设备或资源忙”。

奇怪的mdadm行为-在未能创建时,md127会在新创建的部分零分区上出现“设备或资源忙”。
EN

Server Fault用户
提问于 2012-05-09 09:51:51
回答 2查看 4.1K关注 0票数 1

问题:

代码语言:javascript
复制
# ls /dev/md*
/dev/md0  /dev/md1

# dd if=/dev/zero of=/dev/sdb3 bs=1M count=1
# dd if=/dev/zero of=/dev/sdd3 bs=1M count=1
# mdadm --zero-superblock /dev/sdb3
# mdadm --zero-superblock /dev/sdd3

# mdadm --create -l 1 -n 2 /dev/md2 /dev/sdb3 /dev/sdd3
mdadm: cannot open /dev/sdb3: Device or resource busy

# ls /dev/md*
/dev/md0  /dev/md1  /dev/md127  /dev/md2

# mdadm -D /dev/md127
mdadm: md device /dev/md127 does not appear to be active.

我没有要求它自动检测和组装任何东西。我也没有重新启动。

我在这些磁盘上移动了很多次分区来尝试不同的设置。所以很可能到处都有这些实验的痕迹。

sdb3不忙。几秒钟前我就这样创建了它:

代码语言:javascript
复制
swapoff -a
parted /dev/sdb rm 4        (my old raid10 + lvm)
parted /dev/sdb rm 3        (my old swap)
parted /dev/sdd unit s mkpart root4 503808 5860533118 (start here is same as swap start, and end is same as raid10+lvm end)
parted /dev/sdd set 3 raid on

另外,如果我创建了一个只有/dev/sdd3的设备,--create命令也会打印这个命令:

代码语言:javascript
复制
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md2 started.

但是它现在也打印出来了,在"-l 1“再次工作之后,没有”设备或资源繁忙“消息。(该磁盘有一个bios_grub和raid1分区,其中包含元数据0.90,但是这个sdd3与引导无关)。

我现在不能复制这个了..。我试了几次,并把它复制得很好,但是在尝试了"-l 0“之后,它就成功了。"-l 10“与"-l 1”具有相同的效果。

问题:

为什么md127会出现?

如果md2未能创建它,为什么还要使用它呢?

今后,除使用:

  • dd到零块设备的启动。
  • mdadm -零超块
  • 并使用"-l 0“创建(这是一个无意义的解决方案)

我还能做些什么来清理磁盘,为“--创建”做好准备?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2012-05-09 10:19:35

很难解释为什么md127出现在屏幕上的输出中。但是下一次您可以做的是检查cat /proc/mdstat说了什么-它会告诉您md127是否真的是一个内核设备。如果它不在那里,您可以直接删除/dev/md127

与此相关的是,为了回答第二个问题,mdadm工具将尝试在/dev下创建设备节点,但如果由于某种原因失败,它将不会清除它们。

要回答第三个问题,请确保磁盘没有使用。cat /proc/mdstat,使用mdadm --stop停止任何md设备,运行mdadm --zero-superblock,然后通过运行mdadm --examine /dev/sd...来确保没有md元数据。

票数 3
EN

Server Fault用户

发布于 2014-02-11 02:05:09

md127是当你“分割大脑”一个RAID1数组时所产生的结果。内核开始对它们进行反向编号,以避免与现有配置设备发生冲突。它正在将该备用磁盘计算为未知RAID1数组的成员。我不知道为什么它把另一个分配为md2。这是个谜。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/387399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档