Bom dia, Verifiquei o grupo a que o device pertence:
crwxrwxrwx 1 root dialout 166, 0 Nov 4 08:48 /dev/ttyACM0 O meu usuário já faz parte desse grupo e também ao grupo tty. Também fiz as alterações sugeridas na regra udev do dispositivo: SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660",GROUP="dialout" Permissões do sript -rwsrwsrwx 1 root root 34 Nov 2 08:57 initsat.sh Fiz o login novamente e o resultado é o mesmo, ainda não é possível mudar as permissões sem a senha de root De qualquer forma já consigo alterar essas permissões com as alterações sugeridas pelo Fred alterando sudoers Agradeço a ajuda <https://mailtrack.io/> Sent with Mailtrack <https://chrome.google.com/webstore/detail/mailtrack-for-gmail-inbox/ndnaehgpjlnokgebbaldlmgkapkpjkkb?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality> Luís Cláudio A. Gama Fones: TIM: 11 9 7765-1735 Res: 11-4602-3400 Skype: luisclaudiogama http://luisgama.googlepages.com br.linkedin.com/in/luisclaudiogama |""""""""""""""""""""""""""""|\|_ | Voto Distrital ! |||"'|""\__ |______________________|||_|____|) !(@)'(@)""""*********!(@)(@)*****!(@) Em 2 de novembro de 2017 15:10, Paulino Kenji Sato <pks...@gmail.com> escreveu: > Ola, > Continuo insistindo que o local correto de tratar os dispositivos e pelo > udev. > Pode ser que o /dev/ttyACMx não pertença ao grupo dialout, confira qual o > grupo pertence esse dev (ls -l /dev/ttyACM0). > O fabricante forneceu as regras do udev, então basta melhorar-lo, por > exemplo acrescentando o modo. > > SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*", > ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660" > > Ou um modo mais permissivo, como 0666. > > Verifique qual e o grupo do device, inclua os usuários nesse grupo > (precisa fazer o login para validar as mudanças, existe um comando que > recerrega, mas não lembro) > > # adduser fulano grupo_do_dev > > Verifiquei que o dialout e um dos grupos em que um usuário novo e > adicionado ao criar-lo. > Caso necessite adicionar um novo grupo ao criar um usuário, modique o > arquivo /etc/adduser.conf. (pode ser que isso tenha mudado) > Talvez, o ttyACM* não esteja sendo associado a nenhum grupo, então podemos > mudar a regrar para: > > SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*", > ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660",GROUP="dialout" > > Depois de modificar as regras do udev e necessario reinicar os serviços > relacionados > # udevadm control --reload-rules && service udev restart && udevadm trigger > > Dependendo o tipo de aplicação, o ideal seria impedir o usuário de ter > acesso físico as conexão usb, e outros. > > > 2017-11-02 9:56 GMT-02:00 Luís Cláudio A. Gama <luisg...@gmail.com>: > >> Bom dia, >> >> Em primeiro lugar, gostaria de agradecer todas as sugestões....estou >> tentando entender tudo e aprender mais com isso. >> >> Na inicialização da máquina, eu coloquei em /etc/rc.local >> >> chmod 777 /dev/tty/TS0 >> >> e isso faz que na inicialização da máquina tudo esteja funcionando, já >> que o Linux cria o /dev/ACM0 e também é criado o link para TS0. >> >> Porém minha preocupação é com algum funcionário ( usuário normal não root >> )xereta, dê uma fuçada na máquina e desplugue o SAT e replugue >> novamente...aí o sistema deixa de funcionar, pois o Linux cria um novo ACM1 >> apontando para TS0. >> >> Seguem minhas observações com suas sugestões: >> >> >> *Junior Polegato:* >> >> O conteúdo do script initsat contém somente a linha chmod >> >> script initsat.sh >> ******* >> #!/bin/bash >> chmod 777 /dev/ttyTS0 >> ***** >> >> De acordo com sua sugestão, coloquei o grupo tty para o meu usuário e >> diz: >> >> luis@hal9000:/mnt/midia4/prj/qt/scripts$ ./initsat.sh >> chmod: alterando permissões de “/dev/ttyTS0”: Operação não permitida >> luis@hal9000:/mnt/midia4/prj/qt/scripts$ >> >> >> *Paulo K. Sato:* >> >> Coloquei o grupo dialout pra esse usuário...o tty já estava ( seguindo a >> sugestão anterior ) e ainda não permite essa operação. >> >> Sim, o dispositivo TS0 é criado por udev.... pois de acordo com o >> fabricante do sat, eu coloquei o arquivo que eles forneceram >> em /etc/udev/rules >> >> instruções recebidas do fabricante: >> ******** >> 2. Arquivo de configuração para o serviço udev do Linux: >> >> 99-SAT.rules >> >> Conteúdo: >> >> *SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*", >> ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0" * >> *SUBSYSTEM=="tty", ACTION=="remove", KERNEL=="ttyACM[0-9]*", >> ATTRS{idVendor}=="0525", SYMLINK-="ttyTS0"* >> >> Deve ser copiado no diretório: /etc/udev/rules >> A função desta configuração é alterar o nome do dispositivo reconhecido >> pelo Linux pela >> presença do SAT TANCA, que é /dev/ttyACMx, para /dev/ttyTSx. >> Recomendamos esta alteração para previnir conflitos com outros >> dispositivos. >> >> ******** >> >> Eu fiz algumas testes sem essa regra udev...o device criado na >> inicialização é o ACM0, sendo incrementado a cada replugue de USB. >> >> Com essa regra udev, mesmo incrementando o ACMx, permanece o link >> simbólico ttyTS0, por isso estou mirando alterar as permissões nesse link >> simbólico. >> >> >> *Eduardo Klosowski* >> >> O setuid foi minha primeira tentativa, tanto é que mudei o user e grupo >> do script para root >> >> chown root:root initsat.sh >> e >> chmod +s initsat.sh >> >> Mas continua dizendo "operação não permitida" >> >> saída do script >> chmod: alterando permissões de “/dev/ttyTS0”: Operação não permitida >> >> *Antonio Terceiro* >> >> Também mudei a regra 777 para 660 e cessou a comunicação com o SAT. >> >> >> Agradeço fortemente a ajuda de todos. >> >> >> Luís Cláudio A. Gama >> Fones: TIM: 11 9 7765-1735 Res: 11-4602-3400 <(11)%204602-3400> >> Skype: luisclaudiogama http://luisgama.googlepages.com >> >> br.linkedin.com/in/luisclaudiogama >> >> >> >> |""""""""""""""""""""""""""""|\|_ >> | Voto Distrital ! |||"'|""\__ >> |______________________|||_|____|) >> !(@)'(@)""""*********!(@)(@)*****!(@) >> >> >> Em 1 de novembro de 2017 16:21, Antonio Terceiro <terce...@debian.org> >> escreveu: >> >>> On Wed, Nov 01, 2017 at 02:20:18PM -0200, Luís Cláudio A. Gama wrote: >>> > 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 >>> > >>> > 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. >>> > >>> > Porém estou pensando numa situação em que o SAT é desplugado da USB e >>> > replugado novamente, e isso irá fazer com que as permissões sejam >>> perdidas. >>> > >>> > Para não ter que reiniciar a máquina nessa situação, pesquisei a >>> respeito >>> > de executar um script para essas permissões como root. >>> > >>> > Criei o scritp initsat.sh >>> > #!/bin/bash >>> > chmod 777 /dev/ttyTS0 >>> > >>> > Aí dei os comandos: >>> > >>> > chown root:root initsat.sh >>> > >>> > chmod 777 initsat.sh >>> > >>> > e também chmod +s initsat.sh >>> > >>> > >>> > As permissões ficaram assim: >>> > >>> > -rwsrwsrwx 1 root root 34 Nov 1 14:00 initsat.sh >>> > >>> > >>> > porém ao executar o script com meu user: >>> > >>> > >>> > luis@hal9000:/mnt/midia4/prj/qt/scripts$ ./initsat.sh >>> > >>> > chmod: alterando permissões de “/dev/ttyTS0”: Operação não permitida >>> > >>> > luis@hal9000:/mnt/midia4/prj/qt/scripts$ >>> > >>> > Alguém pode me dar uma sugestão? >>> >>> se tudo que que você precisa é configurar as permissões do dispositivo >>> quando ele for plugado, sugiro escrever e instalar uma regra do udev. >>> tem documentação disso na internet. >>> >>> e ao invés de usar 777, eu sugiro usar 660 e configurar o dono/grupo do >>> dispositivo pra o usuario/grupo que roda a sua aplicação. >>> >> >> <https://mailtrack.io/> Sent with Mailtrack >> <https://chrome.google.com/webstore/detail/mailtrack-for-gmail-inbox/ndnaehgpjlnokgebbaldlmgkapkpjkkb?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality> >> > > > > -- > Paulino Kenji Sato >