我尝试用回声来分离和停止。该设备将自行删除,但重新启动后会再次显示。有一次重新启动后,它恢复了我作为后备设备的 mdadm raid!
另一次,我禁用了与之配对的内存驱动器,进行了分离。重启后 /dev/bcache0 又恢复了。
下没有注销
/sys/fs/块/bcache
我还查看了 /sys/fs/bcache... /sys/block/md0/md0p1/bcache
对于这个不存在的注销。
仅注册和安静注册
我什至卸载了 bcache-tools,重启后 /dev/bcache0 仍然出现,并且正在缓存 /dev/md0!
答案1
如果要永久销毁 bcache 卷,则需要从底层设备中擦除 bcache 超级块。这个操作是不是通过 sysfs 接口公开。所以:
像往常一样使用 停止 bcache 设备
echo 1 > /sys/block/<device>/bcache/stop
。在较新的内核上,这可能会失败并显示“权限被拒绝”。在这种情况下,您需要通过其 UUID 来停止设备,如下所示在这里解释:ls -la /sys/block/<device>/bcache/set # lrwxrwxrwx 1 root root 0 Jun 19 18:42 /sys/block/<device>/bcache/set -> ../../../../../../../../fs/bcache/<UUID> # Note: UUID is something like "89f4c92a-7fae-4d04-ab3c-7c1dd41fa1a5" echo 1 > /sys/fs/bcache/<UUID>/stop
用 擦拭超级块
head -c 1M /dev/zero > /dev/<device>
。 (如果您有足够新的版本util-linux
,则可以使用wipefs
它来代替,这在擦除 bcache 签名方面更精确:wipefs -a /dev/<device>
。)显然,您需要小心选择正确的设备,因为这是一个破坏性操作,会擦除标头设备的。请注意,您将无法再访问 bcache 卷中的任何数据!