Pevné zařízení /dev/tty*

jafy

Pevné zařízení /dev/tty*
« kdy: Dnes v 11:47:25 »
Dobrý den,
na Debianu mám připojen USB GSM modem. Každý den je to jiné zařízení, jednou ttyUSB1 a podruhé ttyUSB2 (ttyUSB0 to má stále). Začalo to zničehonic, dřív to fungovalo.

Zkusil jsem toto:
Kód: [Vybrat]
TTYDEVICE="ttyUSB1" ; sudo echo -e "$(udevadm info -a -n /dev/${TTYDEVICE} | grep ATTRS{idVendor}) \n$(udevadm info -a -n /dev/${TTYDEVICE} | grep ATTRS{idProduct}) \n$(udevadm info -a -n /dev/${TTYDEVICE} | grep ATTRS{serial}) \n"
ATTRS{idVendor}=="12d1"
 ATTRS{idVendor}=="0e0f"
 ATTRS{idVendor}=="1d6b"
 ATTRS{idProduct}=="1003"
 ATTRS{idProduct}=="0002"
 ATTRS{idProduct}=="0001"
 ATTRS{serial}=="0000:02:00.0"


Kód: [Vybrat]
vi /etc/udev/rules.d/99-usb-serial.rulesSUBSYSTEM=="tty", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1003", ATTRS{serial}=="0000:02:00.0", SYMLINK+="ttyGSM"
Kód: [Vybrat]
sudo udevadm control --reload-rules && sudo udevadm trigger
sudo /etc/init.d/udev restart
ls /dev/serial/by-id/usb-HUAWEI_Technologies_HUAWEI_Mobile-if0* -la

stále se zařízení jmenuje /dev/ttyUSB1 nebo /dev/ttyUSB2, ne /dev/ttyGSM.

Nemáte nějaký nápad? Děkuji.
« Poslední změna: Dnes v 11:53:14 od jafy »


Re:"Pevné" zařízení /dev/tty*
« Odpověď #1 kdy: Dnes v 12:15:17 »
Zdravím,

Vámi uvedený postup by měl zařídit, že v systému přibyde symbolický odkaz /dev/ttyGCM, který bude odkazovat na správné zařízení, ať už bude pojmenované /dev/ttyUSB1, /dev/ttyUSB2, nebo jinak. Tím ale nedochází k tomu, že by se původní zařízení přejmenovalo (proto váš kontrolní příkaz stále vrací /dev/ttyUSB2.

Zkontrolujte si, jestli se vám symlink vytvořil pomocí následujícího příkazu:
Kód: [Vybrat]
ls -l /dev/ttyGSM
Pokud symlink existuje, můžete ho bez obav používat namísto např. /dev/ttyUSB2 v libovolných skriptech a příkazech (např. picocom -b 115200 /dev/ttyGSM)

Pokud se nevytvořil, budete muset odladit parametry v souboru s pravidly. Zkuste si ve vedlejším terminálu pustit monitorování UDEV pomocí následujícího příkazu a připojte a odpojte zařízení.
Kód: [Vybrat]
sudo udevadm monitor
Změnit jméno zařízení pomocí udev není možné, viz https://man7.org/linux/man-pages/man7/udev.7.html, sekce začínající textem "The following keys can get values assigned".

jafy

Re:"Pevné" zařízení /dev/tty*
« Odpověď #2 kdy: Dnes v 14:45:37 »
Děkuji, rozumím, ale chybu nevidím.

KERNEL[18201082.924350] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
KERNEL[18201082.924421] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
KERNEL[18201082.924445] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
KERNEL[18201082.924474] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
KERNEL[18201082.924519] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
KERNEL[18201082.924699] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
KERNEL[18201082.924820] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
KERNEL[18201082.924851] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
KERNEL[18201082.924879] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
KERNEL[18201082.924910] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
KERNEL[18201082.925057] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
KERNEL[18201082.925121] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
UDEV  [18201082.934672] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
UDEV  [18201082.935611] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
UDEV  [18201082.935688] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
UDEV  [18201082.936109] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
UDEV  [18201082.936814] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
UDEV  [18201082.936994] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
UDEV  [18201082.937668] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
UDEV  [18201082.938011] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
UDEV  [18201082.938113] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
UDEV  [18201082.938377] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
UDEV  [18201082.939756] unbind   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
UDEV  [18201082.940202] remove   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
KERNEL[18201107.296322] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
KERNEL[18201107.320397] change   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
KERNEL[18201107.322765] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
KERNEL[18201107.323069] add      /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
UDEV  [18201107.324512] add      /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
KERNEL[18201107.328204] remove   /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
KERNEL[18201107.328385] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
KERNEL[18201107.328465] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
KERNEL[18201107.328501] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
KERNEL[18201107.328535] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
UDEV  [18201107.328931] remove   /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
KERNEL[18201107.332247] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
KERNEL[18201107.332463] add      /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
UDEV  [18201107.332870] add      /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
KERNEL[18201107.356322] remove   /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
KERNEL[18201107.356552] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
KERNEL[18201107.356640] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
KERNEL[18201107.356671] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
KERNEL[18201107.356703] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
KERNEL[18201107.356740] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
UDEV  [18201107.357100] remove   /devices/virtual/workqueue/scsi_tmf_33 (workqueue)
UDEV  [18201107.358660] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
UDEV  [18201107.360104] change   /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)
UDEV  [18201107.366126] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
UDEV  [18201107.366193] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
UDEV  [18201107.366630] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
UDEV  [18201107.366665] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
UDEV  [18201107.371990] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
UDEV  [18201107.372135] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0/ttyUSB0 (usb-serial)
UDEV  [18201107.372203] add      /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
UDEV  [18201107.372226] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1/ttyUSB1 (usb-serial)
UDEV  [18201107.372253] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.0 (usb)
UDEV  [18201107.373072] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1/2-2.1:1.1 (usb)
UDEV  [18201107.374292] bind     /devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.1 (usb)



Kód: [Vybrat]
machine#:/var/spool# ls -l /dev/ttyUSB* /dev/ttyG*ls: nelze přistoupit k '/dev/ttyG*': Adresář nebo soubor neexistuje
crw-rw---- 1 root dialout 188, 0 26. led 14.39  /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 1 26. led 14.39  /dev/ttyUSB1


« Poslední změna: Dnes v 14:54:15 od jafy »