iku*_*dyk 2 kvm software-raid ubuntu md
我在 KVM(虚拟机管理器 1.3.2)中有 3 个 Ubuntu 17.10 来宾的 Ubuntu 16.04 主机。
我通过util创建的 iSCSI 门户将几个块设备从 2 个来宾导出到另一个来宾(我们称之为前端)targetcli
。导入它们后,我大量使用multipath
来查找相同的“物理”磁盘并md
创建 RAID 10(例如,mdadm --create --quiet --metadata=1.2 /dev/md1 --level=1 --raid-devices=2 /dev/dm-10 /dev/dm-1
)。然后我需要清除这些信息。
问题来了:它不会擦拭。我经历了通常的步骤(比如,清洁md1
):
1) mdadm -S /dev/md1
2) mdadm --zero-superblock /dev/md1
3) mdadm --zero-superblock /dev/mapper/md1
一切似乎都很好,直到我删除导入的磁盘并在一段时间后重新导入它们:它们随机出现在 RAID 中。有时 RAID 组名称与最初创建的相差很远(例如 md126 和 md127,而我只创建了 md1、md2、... md12)。这些僵尸 RAID 可以用 掩埋mdadm -S
,但它们会在下次导入块设备时再次出现。
为什么--zero-superblock
不能完成它的工作?
UPD:正如@roaima 所提到的,命令 2 和 3 等确实返回错误:
Couldn't open /dev/md1 for write - not zeroing
Couldn't open /dev/mapper for write - not zeroing
Couldn't open /dev/mapper/ for write - not zeroing
这与没有这样的设备几乎相同的答案 - 任何垃圾作为参数都会返回相同的错误。
UPD2:我使用了# cat /proc/mdstat
,它告诉我更多关于突袭的信息:
md124 : 不活动的 vdg[0](S) 5238784块超级1.2 md127 : 不活动的 vdb[1](S) 5238784块超级1.2
但是,我仍然无法擦拭/dev/vdg
(Couldn't open /dev/vdg for write - not zeroing
)和/dev/md124
(Unrecognised md component device - /dev/md124
)。
它失败了,因为以下命令:
mdadm --zero-superblock device
Run Code Online (Sandbox Code Playgroud)
将device
参数作为磁盘,而不是数组。
因此,例如,这是有效的并且适用于sda
驱动器:
mdadm --zero-superblock /dev/sda
Run Code Online (Sandbox Code Playgroud)
或者
mdadm --zero-superblock /dev/sda1
Run Code Online (Sandbox Code Playgroud)
取决于您如何设置 RAID。
像往常一样,不要忘记更新您的initramfs
:
update-initramfs -u
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13213 次 |
最近记录: |