[Flug] [Tech] Problema di permessi su device
Lapo
lapo@inventati.org
Mar 24 Mar 2026 22:13:17 CET
Buonasera Flug!
La lista [tech] immagino ci sia ancora ma non volevo avere l'onore
dell'ultima discusssione per cui mi adeguo al nuovo assetto delle
liste e pongo qui una domanda tennica; forse piu` da primipassi ma -si
sa- sono uno imprestato all'informatica...
Ho un dispositivo usb che fa da interfaccia verso la GPIB, una vecchia
interfaccia per strumentazione elettronica da laboartorio, e che mi
funziona solo da root, da utente normale no. Mi sembrerebbe di aver
fatto tutto bene, oltretutto seguendo le indicazioni di corredo al
sistema ma non riesco a avere il permesso di accesso da utente
normale.
Vi espongo il problema.
Appena connesso il dispositivo, con lsusb viene correttamente
rilevato:
Bus 001 Device 012: ID 03eb:2065 Atmel Corp. LUFA Test and Measurement Demo Application
Posso poi vedere, in '/dev/:
crw-rw---- 1 root usbtmc 180, 0 Mar 24 21:50 usbtmc0
i cui permessi derivano dal file 99-usbtmc.rules aggiunto in
/etc/udev/rules.d/ e che contiene questo:
SUBSYSTEMS==”usb”, ACTION=="add", ATTRS{idVendor}==”03eb″, ATTRS{idProduct}==”2065″, MODE="0660", GROUP="usbtmc"
KERNEL=="usbtmc[0-9]*", MODE="0660", GROUP="usbtmc"
Prima domanda: e` stato scritto correttamente questo file?
Ho poi installato il pacchetto python-usbtmc
(https://github.com/alexforencich/python-usbtmc.git) e se eseguo:
$ python3
>>> import usbtmc
>>> instr=usbtmc.Instrument(1003, 8293)
>>> print(instr.ask("*IDN?"))
<tanta robaccia e infine>
usb.core.USBError: [Errno 13] Access denied (insufficient permissions)
Pero` sono membro del gruppo usbtmc:
$ groups
lapo dialout cdrom floppy sudo audio dip video plugdev netdev wireshark gpib usbtmc
Se eseguo le stesse cose python come root tutto funziona bene e lo
strumento connesso viene rilevato mostrando:
HEWLETT-PACKARD,53131A,0,3703
(ho anche dato altri comandi verificando che tutto funziona a dovere,
da root).
Dopo aver modificato il file in rules.d/ ho dato i comandi:
# udevadm control --reload
# udevadm trigger
oppure
# systemctl restart systemd-udevd
quindi anche questa parte la dovrei aver fatta bene.
Dove sto sbagliando?
Altra cosa curiosa e` che dopo eseguite le righe python /dev/usbtmc0
sparisce anche se tutto (da root) continua a funzionare... vabbe',
questo mi interessa meno.
Grazie un monte!
Lapo
Maggiori informazioni sulla lista
flug