gpt4 book ai didi

python -/dev/mem 访问在树莓派上被拒绝

转载 作者:行者123 更新时间:2023-11-28 18:42:18 26 4
gpt4 key购买 nike

我正在使用我的 Raspberry Pi,我正在编写一个 cgi python 脚本来创建一个网页来控制我的 gpio 输出引脚。当我尝试将 RPi.GPIO 导入为 GPIO 时,我的脚本崩溃了。这是我得到的错误:

File "./coffee.py", line 7, in <module>
import RPi.GPIO as GPIO
RuntimeError: No access to /dev/mem. Try running as root!

当我使用 sudo 运行我的脚本时,我的代码运行完美,但是当我从我的 apache2 服务器的 URL 运行时,它说我没有访问/dev/mem 的权限。我已经尝试编辑 visudo 但没有用。这是我的 visudo 文件的样子:

#includedir /etc/sudoers.d
pi ALL=(ALL) NOPASSWD: ALL
www-data ALL=(root) NOPASSWD: /usr/bin/python3 /usr/lib/cgi-bin/coffee.py *
apache2 ALL = (root) NOPASSWD: /usr/lib/cgi-bin/coffee.py

有什么方法可以通过 URL 调用以 root 身份运行我的脚本?谁能告诉我我做错了什么?

最佳答案

我发现将 www-data 添加到 gpio 用户组效果很好:

sudo usermod -aG gpio www-data

也可以将www-data添加到memory用户组:

sudo usermod -aG kmem www-data

如前所述,这是一个坏主意,但对我来说这是必要的。

关于python -/dev/mem 访问在树莓派上被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24746412/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com