我想知道最简单的方法是确定(没有root特权)是否安装了块设备(例如sdb
)或它的任何部分(以及它的哪一部分)。
检查/proc/mounts
sdb是不够的,因为sdb
LVM可能会使用它的一个分区或其中一个分区。您可以检查,/sys/block/sdb/sdb*/holders/
但是会得到dm-x
必须解析为/dev/mapper
名称的条目才能进行检查/proc/mounts
。可能,但是如果有一个更简单的解决方案...(它不需要root特权)
2
我很好奇,您是否只是在尝试确定设备是否已安装?* / holders和* / * / holders足以告诉您/ proc / mounts表中不存在该设备的安装状态。为什么需要进一步解决?即cryptsetup将其添加到所有者中,表明您不应该弄乱驱动器。.即使未安装/ dev / mapper,也可能导致加密损坏。它只是通过驱动程序在内部安装。同样也不要忘记检查/ sys / block / sdb / holders,因为驱动器可以“保持”在没有分区的情况下。
—
拉赫利