我正在尝试停止 RAID 磁盘以便用新磁盘替换它,因为这个磁盘工作不正常。
我正在输入mdadm --stop /dev/md1
,但收到一条错误消息:
mdadm: fail to stop array /dev/md1: Device or resource busy
即使我重新启动服务器,我也会收到此消息,并且我看不到可能导致此问题的进程。
该服务器在 Debian 上运行,内核为 2.6.18-4-amd64。您能帮忙吗?
编辑:有关我的同事尝试的更多详细信息。
卸载 sda1 后,该命令mdadm --remove /dev/md0 /dev/sda1
有效。但是现在,我们仍然收到一条错误消息mdadm --remove /dev/md1 /dev/sda5
:
mdadm: hot remove failed for /dev/sda5: Device or resource busy
我仍然不完全了解不同的分区是如何安装的,所以我想在当前情况下有些事情我不明白......
答案1
/dev/md1 是 RAID 阵列本身。您需要停止该阵列中的特定参与者。尝试:
mdadm --fail /dev/md0 /dev/sda1
mdadm --remove /dev/md0 /dev/sda1
这是一个很好的资源:http://www.excaliburtech.net/archives/19
如果需要移动所有参与的设备,则需要逐个执行此操作,等待每次设备交换后重建阵列。
答案2
我删除分区表:
dd if=/dev/zero of=/dev/md0 bs=512 count=1024
然后重新启动就可以了。
答案3
在我的案例中,我必须对 XEN 服务器使用更多的技巧
步骤 # 1 dd if=/dev/zero of=/dev/md0 bs=512 count=1024
步骤2——重启服务器
步骤#3
[root@localhost ~]# mdadm --stop /dev/md0 --force
进而
[root@localhost ~]# mdadm --remove /dev/md0 --force
答案4
我遇到了同样的问题,在尝试了无数次之后,这个对我有用:
mdadm --manage --stop /dev/md0
这将从阵列中完全删除 md0。