我想通过代码自动让我的串行连接获得许可,而不是每次都要使用终端来授予许可。
我尝试使用import os使用os.system()自动授予权限,但是权限始终被拒绝。
def checkConnection(password):
if os.path.exists('/dev/ttyUSB0'):
usb = '/dev/ttyUSB0'
os.system('echo password | sudo chmod 666 /dev/ttyUSB0')
return usb
elif os.path.exists('/dev/ttyUSB1'):
usb = '/dev/ttyUSB0'
os.system('echo password | sudo chmod 666 /dev/ttyUSB1')
return usb
else:
print('Is there a console connected?')
我不断得到的错误是
self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)
PermissionError: [Errno 13] Permission denied: '/dev/ttyUSB0'
我明白了您正在努力实现的目标,听到了您在说什么,但这不是正确的方法。既不echo password是声音的使用,也不是赋予666设备的想法。只需将您的用户添加到拥有设备的组中,然后将其保留。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。