0

我想擦除一个磁盘,然后用 info linux 更新 /dev/mapper。这是操作示例。在 /dev/vdc1 上创建一个 test pv 和 vg 然后创建 test lv,使用 dd 擦除 /dev/vdc1 的前 8K 数据(破坏 lvm 元数据)。

# pvcreate /dev/vdc1
# vgcreate testvg /dev/vdc1
# lvcreate -L10G -n testlv testvg
# lsblk /dev/vdc
NAME              MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vdc               252:32   0  120G  0 disk 
└─vdc1            252:33   0  108G  0 part 
  └─testvg-testlv 253:2    0   10G  0 lvm 

# dd if=/dev/zero of=/dev/vdc1 bs=8K count=1 oflag=direct

现在的问题是如何在不重新启动的情况下通知 linux 来更新 /dev/mapper?或者有没有更方便的方法可以通过重启来清除 lvm?

4

1 回答 1

1

嗯,没有回应?我对 lsblk 做了一些研究。它是通过读取/dev/sysfs显示块信息来实现的。所以我认为它可以通过dmsetup remove命令来解决,以删除被破坏的 vg 下的任何 lv。像这样:

# pvcreate /dev/vdc1
# vgcreate testvg /dev/vdc1
# lvcreate -L10G -n testlv testvg
# dd if=/dev/zero of=/dev/vdc1 bs=8K count=1 oflag=direct
# dmsetup remove /dev/testvg/*

然后什么都没有lsblk了。但是,我仍然想知道该方法不是最好的方法。有人可以附加更多方法吗?

于 2016-04-14T10:52:38.470 回答