Nodejs和raw-socket包

时间:2018-01-24 15:33:01

标签: node.js raw-sockets

我有一个nodejs应用程序应该在我打开机器时启动(我使用Linux Ubuntu 16.04,所以我把它放在rc.local中)。我的应用程序使用raw-socket包。

由于我的应用程序无法以root身份运行,因此在rc.local中,我设置了:

sudo -u myuser node myapp.js &

当我的应用程序调用“new raw-socket”时,我收到错误:

Operation not permitted.

我尝试了不同的方法,例如“setcap”,但它们对我不起作用。

此外,如果我在加载操作系统后尝试运行我的应用程序,该应用程序可以正常运行而没有任何问题....

我应该在rc.local中添加一些东西....我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

node-raw-socket需要root访问权限才能创建其原始套接字。

您将必须运行

sudo node myapp.js