我有一个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中添加一些东西....我错过了什么吗?
答案 0 :(得分:0)
node-raw-socket
需要root访问权限才能创建其原始套接字。
您将必须运行
sudo node myapp.js