php - 如何在 Debian Linux 中允许用户 www-data 访问 i2c?

标签 php linux apache i2c

我有一个访问/dev/i2c-1 的程序。当以 root 身份运行时,它工作正常。现在我必须能够通过在 Apache 服务器上使用 PHP 脚本来运行它。程序启动运行正常,但是用户www-data无法访问i2c-1。没有权限!按照建议,我已将 www-data 添加到 i2c 组,“adduser www-data i2c”,但这没有帮助。我在单板嵌入式设备上使用命令行 Debian Linux。我怎样才能做到这一点,同时至少保持最低限度的安全性?

gI2c1File = open("/dev/i2c-1", O_RDWR);
if (gI2c1File < 0) {
    file_logError("Error opening i2c-1 interface", strerror(errno));
    return 0;
} 

最佳答案

仅将 a​​pache 用户添加到组中是不够的;您还必须确认“/dev/i2c-1”目录的组权限允许读取和写入(或您要对其执行的任何任务。)

作为 root,您应该执行以下命令:

chmod g+rw /dev/i2c-1

此命令将更改此指定目录的权限,以允许其组中的用户对其进行读取和写入。

关于php - 如何在 Debian Linux 中允许用户 www-data 访问 i2c?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34930045/

相关文章:

php - 如何根据具有一对多关系的两个表中的位置进行搜索?

php 重定向不能正常工作

php - PHP中如何获取系统命令执行的响应状态值

apache - 在 Apache 2.4 上启用 PUT 和 DELETE 方法

apache - 带有大量 POST 上传和我的 apache + varnish + plone 设置的错误网关

php - 如何在php中调用mysql过程

php - 依赖 hell : installing Sonata User

linux - 如何在终端中以静默模式运行 Mocha 测试

Linux 下 C++ 编译错误

PHP, AJAX : large data being truncated