是否可以禁用特定 SATA 磁盘上的分区映射?
我使用“sdb”磁盘进行 DRBD 复制,其中直接安装了 KVM VM。因此,/dev/sdb 有分区,主机在重启后识别了它。
如果可能的话,我想制定一条规则,通过连接路径完全忽略 KVM 主机上的磁盘(分区)。
我已经在 10-ignore-disk.rules 中尝试过这些规则(及其组合),但它们都没有立即起作用
KERNEL=="sdb", GROUP="disk", OPTIONS:="last_rule" KERNEL=="sdb1",ENV{UDISKS_PRESENTATION_HIDE}="1" KERNEL=="sdb", OPTIONS:="ignore_device" KERNEL=="1:0:0:0", SUBSYSTEMS=="scsi", DRIVERS=="sd",OPTIONS:="last_rule"
答案1
好的,问题是,由于您将整个磁盘给了客户机,它正在创建“真实”的分区,因此主机当然可以看到它们。
将来,如果您想避免这种情况发生,请在主机上对 /dev/sdb 进行分区,并使用单个分区 /dev/sdb1 填充整个磁盘;然后将 /dev/sdb1 作为块设备提供给客户机。然后,客户机将在 /dev/sdb1 内创建自己的分区作为其自己的本机 /dev/vda1、/dev/vda2 等,并且主机只能以您希望的方式通过 kpartx 查看它们。
您还可以将 /dev/sdb1 设置为主机上 LVM 的块设备,在其中创建一个 LV,然后赋予那将其作为 /dev/vda 提供给客户机并从那里进行分区。只要您高兴(我个人通常将 LV 作为原始设备提供给客户机)。如果您不希望客户机创建主机可以查看和操作的真实分区,请避免将实际的原始磁盘交给客户机。