如果我插入 USB 记忆棒,我会在 /sys/bus/usb/devices 中看到一个新文件夹......因此是一个新的 USB 设备。
我还在 /sys/block 中看到了一个新文件夹......因此是一个新的块设备。
我的问题是:如何获得这两个设备之间的防水映射?意味着:如果我在 /sys/bus/usb/devices 中获得了一个新设备,我如何以编程方式(通过检查 /sys/...)找出哪个块设备映射/与此 USB 设备相关,反之亦然反之?!
据我所知,可以通过“libudev”库访问 udev 信息。网上也有一个很好的示例:http ://www.signal11.us/oss/udev/
我能够对其进行修改以读出所有“/dev/sd*”设备并获取它们的供应商 ID、产品 ID 以及序列号。我认为这个解决方案足够独立于内核/Linux 发行版。但我仍然需要验证这一点。