Bonjour
Je suis debian etch 4
Je dois coder un truc qui doit surveiller l’insertion spcécifique d’une clef USB (avec un ID déterminé) afin de la monter dans un répertoire précis et effectuer des opérations de contrôle.
Pour détecter la présence de la clef, pas de problèmes
un parcours du /proc/scsi/usb-storage/* ou bien un lsusb
Par exemple voici un Disque externe
cat /proc/scsi/usb-storage/3
Host scsi3: usb-storage
Vendor: [b]Genesys Logic[/b]
Product: [b]USB TO IDE[/b]
Serial Number: None
Protocol: Transparent SCSI
Transport: Bulk
Quirks: GO_SLOW MAX_SECTORS_64
lsusb -v
Bus 005 Device 006: ID 05e3:0702 [b]Genesys Logic[/b], Inc. USB 2.0 IDE Adapter
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x05e3 Genesys Logic, Inc.
idProduct 0x0702 USB 2.0 IDE Adapter
bcdDevice 0.02
iManufacturer 0
iProduct 1 USB TO IDE
iSerial 0
bNumConfigurations 1
Jusque la tout va bien avec ces infos (le iProduct “USB TO IDE” et le IdVendor “Genesys Logic, Inc”), mon programme est amené à détecter que le disque/clef est connecté sur le PC. Par contre, celui-ci n’est pas encore “mounté”… Ca mon programme doit le faire…
La ou ca devient compliqué c’est :
Comment savoir que le point source de montage est /dev/sdb1 ou /dev/sdb2 ou voir même /dev/sdc* ???
car le fdisk -l ne m’indique pas vraimment les infos précises afin de faire la relation entre le bon périphérique et le point de source…
il m’indique ceci :
Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 1 4864 39070048+ c W95 FAT32 (LBA)
ok, dans ce cas c’est /dev/sdb1 mais l’Id c W95 n’est pas vraimment parlant et ne permet pas à mon programme de faire la relation avec le “USB TO IDE” découvert avec les méthodes lsusb ou /proc/scsi/usb-storage
la je pêche, au secours !!!???