허브에 USB 플래시 드라이브가 연결되어 있습니다. sysfs의 저장 장치 파티션 devpath는 입니다 /devices/pci0000:00/0000:00:12.2/usb6/6-1/6-1.2/6-1.2:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb1
. 해당 USB 장치 경로를 검색하고 싶습니다(즉 /devices/pci0000:00/0000:00:12.2/usb6/6-1/6-1.2
, 더 좋습니다 /sys/bus/usb/devices/6-1.2
). PC에 연결된 모든 장치에 대해 이 작업을 수행하려면 일부 스크립트 언어(셸, Python 등)를 사용합니다.편집하다: udev에서 원시 파티션의 devpath를 가져오고 있으며 USB 장치 항목을 다시 추적해야 합니다.
가장 쉽고 어리석은 방법은 항목 6-1.2까지 경로를 탐색하는 것입니다. 그러나 여기에는 몇 가지 심각하고 명백한 단점이 있습니다. 첫째, 장치가 허브에 연결될 수도 있고 연결되지 않을 수도 있으므로 해당 장치의 개발 경로가 변경될 수 있습니다. 둘째, 장치에 파티션이 있을 수도 있고 없을 수도 있으며 이로 인해 devpath도 변경됩니다. 또한 6-1.2 장치뿐만 아니라 일반적인 솔루션도 필요합니다.
디렉토리의 실제 장치 항목에 대한 심볼릭 링크가 없는 것 같습니다 .../block/sdb/sdb1
. 내가 원하는 것을 달성할 수 있는 우아한 방법이 있나요?