EPERM错误在node.js中写入文件
我试图通过写入/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'的虚拟path,查看该文件夹的权限,gpio组也有权限,当然,根。
这是GPIO专用的吗? 我看到一些通过fs.writeFile启用gpio控制的节点模块,例如直接写入同一目录的https://github.com/EnotionZ/GpiO/blob/master/lib/gpio.js 。