EPERM错误写入node.js中的文件

时间:2014-04-08 08:20:32

标签: node.js permissions raspberry-pi gpio

我正在尝试通过写入/sys/class/gpio文件夹及其子文件夹和文件来更新我的RaspberryPi上的GPIO。

当我运行命令

fs.readFileSync('/sys/class/gpio/gpio2/value', 'utf-8');

我得到正确答案,没问题。

当我跑步时

fs.writeFileSync('/sys/class/gpio/gpio2/value',0);

我收到一个EPERM错误,如果我理解正确,则告诉我我没有正确的权限来写入该文件。

当我列出该文件的权限时,我看到root和gpio组都具有读写权限,而我当前的用户'pi'是gpio组的一部分。所以一切都应该没问题。

如果我运行sudo节点,我应该有权限,但我仍然会收到EPERM错误。

在我看来'/ sys / class / gpio'是'/ sys / devices / gpio'的虚拟路径,查看该文件夹的权限,gpio组也有权限,当然,root也是如此。

这是GPIO特有的吗?我看到一些节点模块通过fs.writeFile启用gpio控件,例如,https://github.com/EnotionZ/GpiO/blob/master/lib/gpio.js直接写入同一目录。

0 个答案:

没有答案