Re: udev et nommage persistant de modems USB

2007-01-09 Par sujet franck

Sylvain MEDEOT wrote:
> Bonjour la liste,
> 
> Et bonne année à tous.
> 
> J'ai un serveur Debian Etch avec un noyau 2.6.18-3 et le serveur de fax
> Hylafax. J'utilise des modems USB en remplacement des faxs traditionnels
> avec à la clé l'envoi des faxs reçus par mail sous la forme de fichiers
> PDF.
> 
> Celà fonctionne très bien. J'ai actuellement 7 modems USB ( des
> multitech) qui sont reconnus en /dev/ttyACM0 à ACM6.
> 
> Mon soucis vient du fait que lorsque je suis à amené à redémarrer ce
> serveur, le nommage des modems diffère à chaque fois. Et comme
> l'acheminement des faxs est basé sur le nom du périphérique par lequel
> il entre, problème...
> 
> La commande udevinfo -ap /sys/class/tty/ttyACM0 donne :
> 
>  looking at device '/class/tty/ttyACM0':
>KERNEL=="ttyACM0"
>SUBSYSTEM=="tty"
>DRIVER==""
>ATTR{dev}=="166:0"
> 
>  looking at parent device
> '/devices/pci:00/:00:1d.0/usb1/1-1/1-1:2.0':
>KERNELS=="1-1:2.0"
>SUBSYSTEMS=="usb"
>DRIVERS=="cdc_acm"
>ATTRS{interface}=="Multi-Tech Win95 Modem USB"
>ATTRS{modalias}=="usb:v06E0pF107d0100dc02dsc00dp00ic02isc02ip01"
>ATTRS{bInterfaceProtocol}=="01"
>ATTRS{bInterfaceSubClass}=="02"
>ATTRS{bInterfaceClass}=="02"
>ATTRS{bNumEndpoints}=="01"
>ATTRS{bAlternateSetting}==" 0"
>ATTRS{bInterfaceNumber}=="00"
> 
>  looking at parent device '/devices/pci:00/:00:1d.0/usb1/1-1':
>KERNELS=="1-1"
>SUBSYSTEMS=="usb"
>DRIVERS=="usb"
>ATTRS{configuration}=="Data Interface"
>ATTRS{product}=="MultiModemUSB"
>ATTRS{manufacturer}=="Multi-Tech Systems, Inc."
>ATTRS{maxchild}=="0"
>ATTRS{version}==" 1.00"
>ATTRS{devnum}=="4"
>ATTRS{speed}=="12"
>ATTRS{bMaxPacketSize0}=="8"
>ATTRS{bNumConfigurations}=="2"
>ATTRS{bDeviceProtocol}=="00"
>ATTRS{bDeviceSubClass}=="00"
>ATTRS{bDeviceClass}=="02"
>ATTRS{bcdDevice}=="0100"
>ATTRS{idProduct}=="f107"
>ATTRS{idVendor}=="06e0"
>ATTRS{bMaxPower}=="400mA"
>ATTRS{bmAttributes}=="a0"
>ATTRS{bConfigurationValue}=="2"
>ATTRS{bNumInterfaces}==" 2"
> 
>  looking at parent device '/devices/pci:00/:00:1d.0/usb1':
>KERNELS=="usb1"
>SUBSYSTEMS=="usb"
>DRIVERS=="usb"
>ATTRS{configuration}==""
>ATTRS{serial}==":00:1d.0"
>ATTRS{product}=="UHCI Host Controller"
>ATTRS{manufacturer}=="Linux 2.6.18-3-686 uhci_hcd"
>ATTRS{maxchild}=="2"
>ATTRS{version}==" 1.10"
>ATTRS{devnum}=="1"
>ATTRS{speed}=="12"
>ATTRS{bMaxPacketSize0}=="64"
>ATTRS{bNumConfigurations}=="1"
>ATTRS{bDeviceProtocol}=="00"
>ATTRS{bDeviceSubClass}=="00"
>ATTRS{bDeviceClass}=="09"
>ATTRS{bcdDevice}=="0206"
>ATTRS{idProduct}==""
>ATTRS{idVendor}==""
>ATTRS{bMaxPower}=="  0mA"
>ATTRS{bmAttributes}=="e0"
>ATTRS{bConfigurationValue}=="1"
>ATTRS{bNumInterfaces}==" 1"
> 
>  looking at parent device '/devices/pci:00/:00:1d.0':
>KERNELS==":00:1d.0"
>SUBSYSTEMS=="pci"
>DRIVERS=="uhci_hcd"
>ATTRS{broken_parity_status}=="0"
>ATTRS{enable}=="1"
>ATTRS{modalias}=="pci:v8086d27C8sv1019sd2141bc0Csc03i00"
>ATTRS{local_cpus}=="ff"
>ATTRS{irq}=="201"
>ATTRS{class}=="0x0c0300"
>ATTRS{subsystem_device}=="0x2141"
>ATTRS{subsystem_vendor}=="0x1019"
>ATTRS{device}=="0x27c8"
>ATTRS{vendor}=="0x8086"
> 
>  looking at parent device '/devices/pci:00':
>KERNELS=="pci:00"
>SUBSYSTEMS==""
>DRIVERS==""
> 
> La commande udevinfo -ap /sys/class/tty/ttyACM2 donne :
>  looking at device '/class/tty/ttyACM2':
>KERNEL=="ttyACM2"
>SUBSYSTEM=="tty"
>DRIVER==""
>ATTR{dev}=="166:2"
> 
>  looking at parent device
> '/devices/pci:00/:00:1d.1/usb2/2-1/2-1:2.0':
>KERNELS=="2-1:2.0"
>SUBSYSTEMS=="usb"
>DRIVERS=="cdc_acm"
>ATTRS{interface}=="Multi-Tech Win95 Modem USB"
>ATTRS{modalias}=="usb:v06E0pF107d0100dc02dsc00dp00ic02isc02ip01"
>ATTRS{bInterfaceProtocol}=="01"
>ATTRS{bInterfaceSubClass}=="02"
>ATTRS{bInterfaceClass}=="02"
>ATTRS{bNumEndpoints}=="01"
>ATTRS{bAlternateSetting}==" 0"
>ATTRS{bInterfaceNumber}=="00"
> 
>  looking at parent device '/devices/pci:00/:00:1d.1/usb2/2-1':
>KERNELS=="2-1"
>SUBSYSTEMS=="usb"
>DRIVERS=="usb"
>ATTRS{configuration}=="Data Interface"
>ATTRS{product}=="MultiModemUSB"
>ATTRS{manufacturer}=="Multi-Tech Systems, Inc."
>ATTRS{maxchild}=="0"
>ATTRS{version}==" 1.00"
>ATTRS{devnum}=="3"
>ATTRS{speed}=="12"
>ATTRS{bMaxPacketSize0}=="8"
>ATTRS{bNumConfigurations}=="2"
>ATTRS{bDeviceProtocol}=="00"
>ATTRS{bDeviceSubClass}=="00"
>ATTRS{bDeviceClass}=="02"
>ATTRS{bcdDevice}=="0100"
>ATTRS{idProduct}=="f107"
>ATTRS{idVendor}=="06e0"
>ATTRS{bMaxPower}=="400mA"
>ATTRS{bmAttributes}=="a0"
>ATTRS{bConfigurationValue}=="2"
>ATTRS{bNumInterfaces}==" 2"
> 
>  looking at parent device

udev et nommage persistant de modems USB

2007-01-09 Par sujet Sylvain MEDEOT

Bonjour la liste,

Et bonne année à tous.

J'ai un serveur Debian Etch avec un noyau 2.6.18-3 et le serveur de fax 
Hylafax. J'utilise des modems USB en remplacement des faxs traditionnels 
avec à la clé l'envoi des faxs reçus par mail sous la forme de fichiers PDF.


Celà fonctionne très bien. J'ai actuellement 7 modems USB ( des 
multitech) qui sont reconnus en /dev/ttyACM0 à ACM6.


Mon soucis vient du fait que lorsque je suis à amené à redémarrer ce 
serveur, le nommage des modems diffère à chaque fois. Et comme 
l'acheminement des faxs est basé sur le nom du périphérique par lequel 
il entre, problème...


La commande udevinfo -ap /sys/class/tty/ttyACM0 donne :

 looking at device '/class/tty/ttyACM0':
   KERNEL=="ttyACM0"
   SUBSYSTEM=="tty"
   DRIVER==""
   ATTR{dev}=="166:0"

 looking at parent device 
'/devices/pci:00/:00:1d.0/usb1/1-1/1-1:2.0':

   KERNELS=="1-1:2.0"
   SUBSYSTEMS=="usb"
   DRIVERS=="cdc_acm"
   ATTRS{interface}=="Multi-Tech Win95 Modem USB"
   ATTRS{modalias}=="usb:v06E0pF107d0100dc02dsc00dp00ic02isc02ip01"
   ATTRS{bInterfaceProtocol}=="01"
   ATTRS{bInterfaceSubClass}=="02"
   ATTRS{bInterfaceClass}=="02"
   ATTRS{bNumEndpoints}=="01"
   ATTRS{bAlternateSetting}==" 0"
   ATTRS{bInterfaceNumber}=="00"

 looking at parent device '/devices/pci:00/:00:1d.0/usb1/1-1':
   KERNELS=="1-1"
   SUBSYSTEMS=="usb"
   DRIVERS=="usb"
   ATTRS{configuration}=="Data Interface"
   ATTRS{product}=="MultiModemUSB"
   ATTRS{manufacturer}=="Multi-Tech Systems, Inc."
   ATTRS{maxchild}=="0"
   ATTRS{version}==" 1.00"
   ATTRS{devnum}=="4"
   ATTRS{speed}=="12"
   ATTRS{bMaxPacketSize0}=="8"
   ATTRS{bNumConfigurations}=="2"
   ATTRS{bDeviceProtocol}=="00"
   ATTRS{bDeviceSubClass}=="00"
   ATTRS{bDeviceClass}=="02"
   ATTRS{bcdDevice}=="0100"
   ATTRS{idProduct}=="f107"
   ATTRS{idVendor}=="06e0"
   ATTRS{bMaxPower}=="400mA"
   ATTRS{bmAttributes}=="a0"
   ATTRS{bConfigurationValue}=="2"
   ATTRS{bNumInterfaces}==" 2"

 looking at parent device '/devices/pci:00/:00:1d.0/usb1':
   KERNELS=="usb1"
   SUBSYSTEMS=="usb"
   DRIVERS=="usb"
   ATTRS{configuration}==""
   ATTRS{serial}==":00:1d.0"
   ATTRS{product}=="UHCI Host Controller"
   ATTRS{manufacturer}=="Linux 2.6.18-3-686 uhci_hcd"
   ATTRS{maxchild}=="2"
   ATTRS{version}==" 1.10"
   ATTRS{devnum}=="1"
   ATTRS{speed}=="12"
   ATTRS{bMaxPacketSize0}=="64"
   ATTRS{bNumConfigurations}=="1"
   ATTRS{bDeviceProtocol}=="00"
   ATTRS{bDeviceSubClass}=="00"
   ATTRS{bDeviceClass}=="09"
   ATTRS{bcdDevice}=="0206"
   ATTRS{idProduct}==""
   ATTRS{idVendor}==""
   ATTRS{bMaxPower}=="  0mA"
   ATTRS{bmAttributes}=="e0"
   ATTRS{bConfigurationValue}=="1"
   ATTRS{bNumInterfaces}==" 1"

 looking at parent device '/devices/pci:00/:00:1d.0':
   KERNELS==":00:1d.0"
   SUBSYSTEMS=="pci"
   DRIVERS=="uhci_hcd"
   ATTRS{broken_parity_status}=="0"
   ATTRS{enable}=="1"
   ATTRS{modalias}=="pci:v8086d27C8sv1019sd2141bc0Csc03i00"
   ATTRS{local_cpus}=="ff"
   ATTRS{irq}=="201"
   ATTRS{class}=="0x0c0300"
   ATTRS{subsystem_device}=="0x2141"
   ATTRS{subsystem_vendor}=="0x1019"
   ATTRS{device}=="0x27c8"
   ATTRS{vendor}=="0x8086"

 looking at parent device '/devices/pci:00':
   KERNELS=="pci:00"
   SUBSYSTEMS==""
   DRIVERS==""

La commande udevinfo -ap /sys/class/tty/ttyACM2 donne :
 looking at device '/class/tty/ttyACM2':
   KERNEL=="ttyACM2"
   SUBSYSTEM=="tty"
   DRIVER==""
   ATTR{dev}=="166:2"

 looking at parent device 
'/devices/pci:00/:00:1d.1/usb2/2-1/2-1:2.0':

   KERNELS=="2-1:2.0"
   SUBSYSTEMS=="usb"
   DRIVERS=="cdc_acm"
   ATTRS{interface}=="Multi-Tech Win95 Modem USB"
   ATTRS{modalias}=="usb:v06E0pF107d0100dc02dsc00dp00ic02isc02ip01"
   ATTRS{bInterfaceProtocol}=="01"
   ATTRS{bInterfaceSubClass}=="02"
   ATTRS{bInterfaceClass}=="02"
   ATTRS{bNumEndpoints}=="01"
   ATTRS{bAlternateSetting}==" 0"
   ATTRS{bInterfaceNumber}=="00"

 looking at parent device '/devices/pci:00/:00:1d.1/usb2/2-1':
   KERNELS=="2-1"
   SUBSYSTEMS=="usb"
   DRIVERS=="usb"
   ATTRS{configuration}=="Data Interface"
   ATTRS{product}=="MultiModemUSB"
   ATTRS{manufacturer}=="Multi-Tech Systems, Inc."
   ATTRS{maxchild}=="0"
   ATTRS{version}==" 1.00"
   ATTRS{devnum}=="3"
   ATTRS{speed}=="12"
   ATTRS{bMaxPacketSize0}=="8"
   ATTRS{bNumConfigurations}=="2"
   ATTRS{bDeviceProtocol}=="00"
   ATTRS{bDeviceSubClass}=="00"
   ATTRS{bDeviceClass}=="02"
   ATTRS{bcdDevice}=="0100"
   ATTRS{idProduct}=="f107"
   ATTRS{idVendor}=="06e0"
   ATTRS{bMaxPower}=="400mA"
   ATTRS{bmAttributes}=="a0"
   ATTRS{bConfigurationValue}=="2"
   ATTRS{bNumInterfaces}==" 2"

 looking at parent device '/devices/pci:00/:00:1d.1/usb2':
   KERNELS=="usb2"
   SUBSYSTEMS=="usb"
   DRIVERS=="usb"
   ATTRS{configuration}==""
   ATTRS{serial}==":00:1d.1"
   ATTRS{product}=="UHCI Host Controller"
   ATTRS{manufacturer}=="Linux 2.6.18-3-686 uhci_hcd"
   ATTRS{maxchild}=="2"
   ATTRS{version}==" 1.10"
   ATTRS{