Ola,

2017-11-01 14:20 GMT-02:00 Luís Cláudio A. Gama <luisg...@gmail.com>:

> Boa tarde a todos,
>
> Vou instalar um SAT fiscal plugado em USB na máquina.
>
> Esse SAT cria:
>
> lrwxrwxrwx 1 root root          7 Nov  1 13:52 */dev/ttyTS0* -> ttyACM0
>
>
Isso e um symlink, link para o dispositivo real. Que eo /dev/ttyACM0



> E eu preciso dar permissões nesse ttyTS0 para que o usuário possa executar
> minha aplicacaçao e acessar o SAT.
>
> já coloquei em /etc/rc.local
> chmod 777 /dev/TS0
>
> Ao inicializar a máquina tudo funciona ok.
>

Nos sistemas atuais, o /dev  e montado em memoria ram (devtmpfs), tudo e
perdido no reboot.

Se esse for o único dispositivo ttyACM0, re plugar o USB em condições
normais não deveria trazer problemas.

A forma correta de lidar com permissões no /dev e colocar o usuário no
grupo adequado. No caso do ttyACM* e o grupo dialout (assim como outros
dispositivos seriais)
# addgroup usuario dialout

Se for necessário que, ao plugar um dispositivo, seja necessário executar
alguma ação, esse deve ser realizado pelo udev (systemd-udevd.service). O
link ttyTS0 inclusive deve estar sendo criado por um script disparado pelo
udev.

Não estou familiarizado com systemd, portando não poderei dar maiores
explicações.

Lembre-se, se uma programa precisa de permissões de root, algo esta errado.
Nos que realmente precisam, isso já esta sendo feito de forma transparente
ao usuário.


-- 
Paulino Kenji Sato

Responder a