serial.serialutil.SerialException:无法打开端口 /dev/ttyAMA0:[Errno 13] 权限被拒绝:'/dev/ttyAMA0'
serial.serialutil.SerialException: could not open port /dev/ttyAMA0: [Errno 13] Permission denied: '/dev/ttyAMA0'
我有一个 Raspberry,我正在尝试连接到 Ubidots IOT 云,但出现此错误:
pi@raspberrypi:~/Downloads/raspbiDaniela/Ver 2016/ZonrProject $ python main.py
Traceback (most recent call last):
File "main.py", line 124, in <module>
main()
File "main.py", line 21, in main
ser = serial.Serial(port=port, baudrate=baud)
File "/usr/lib/python2.7/dist-packages/serial/serialutil.py", line 261, in __init__
self.open()
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 278, in open
raise SerialException("could not open port %s: %s" % (self._port, msg))
serial.serialutil.SerialException: could not open port /dev/ttyAMA0: [Errno 13] Permission denied: '/dev/ttyAMA0'
您不需要像评论中建议的那样每次都使用 sudo 运行 脚本,但您需要确保您拥有 /dev/ttyAMA0
的 read/write 权限。您可以使用以下方式修改权限:
sudo chmod 666 /dev/ttyAMA0
如果设备是可拆卸的,您还可以考虑创建一个 udev
规则,它会在您每次连接时应用正确的权限。您可以在 Debian's wiki.
阅读更多关于 udev
规则的信息
我在通过串口打开 SSH 时遇到了这个问题。当我关闭它并仅通过 sudo raspi-config
打开串行接口时,一切正常,没有权限问题。
希望对其他开发者有所帮助。
我有一个 Raspberry,我正在尝试连接到 Ubidots IOT 云,但出现此错误:
pi@raspberrypi:~/Downloads/raspbiDaniela/Ver 2016/ZonrProject $ python main.py
Traceback (most recent call last):
File "main.py", line 124, in <module>
main()
File "main.py", line 21, in main
ser = serial.Serial(port=port, baudrate=baud)
File "/usr/lib/python2.7/dist-packages/serial/serialutil.py", line 261, in __init__
self.open()
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 278, in open
raise SerialException("could not open port %s: %s" % (self._port, msg))
serial.serialutil.SerialException: could not open port /dev/ttyAMA0: [Errno 13] Permission denied: '/dev/ttyAMA0'
您不需要像评论中建议的那样每次都使用 sudo 运行 脚本,但您需要确保您拥有 /dev/ttyAMA0
的 read/write 权限。您可以使用以下方式修改权限:
sudo chmod 666 /dev/ttyAMA0
如果设备是可拆卸的,您还可以考虑创建一个 udev
规则,它会在您每次连接时应用正确的权限。您可以在 Debian's wiki.
udev
规则的信息
我在通过串口打开 SSH 时遇到了这个问题。当我关闭它并仅通过 sudo raspi-config
打开串行接口时,一切正常,没有权限问题。
希望对其他开发者有所帮助。