通过python授予USB权限

时间:2019-07-02 18:50:20

标签: python linux python-3.x

我想让我的串行连接自动通过代码获得许可,而不是每次都要使用终端来授予许可。

我尝试使用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'

1 个答案:

答案 0 :(得分:0)

我明白了您要实现的目标,我听到了您在说什么,但这不是正确的方法。使用echo password既不合理,也不给设备提供666的想法。只需将您的用户添加到拥有设备的组中,然后将其保留。