【发布时间】:2012-07-19 00:49:49
【问题描述】:
如何通过具有 root 权限的 WebStorm IDE 运行 node.js 应用程序,以便让 node.js 运行 shell 命令?
提前致谢!
【问题讨论】:
如何通过具有 root 权限的 WebStorm IDE 运行 node.js 应用程序,以便让 node.js 运行 shell 命令?
提前致谢!
【问题讨论】:
最简单的方法是用root自己运行WebStorm,父节点进程会继承权限。
【讨论】:
sudo 运行原始节点脚本并修改系统 sudoers 以便在运行此脚本时不要求输入密码?
正如 CrazyCoder 所提到的,可以使用 shell 脚本来执行此操作。详细地说,脚本看起来像这样:
#!/bin/bash
sudo /path/to/node "$@"
另外,还需要运行sudo visudo 并添加以下行:
username ALL=(ALL) NOPASSWD: /path/to/node
最后,有人想chmod +x 脚本,然后指定脚本的路径作为WebStorm 中节点的路径。
【讨论】:
[WS=WebStorm]
如果您还想在 WS 中调试它,请稍加修改/添加: (无需以 root 身份运行 WS):
要点:WS 终端窗口 + 调试端口 + 远程调试配置
sudo nodemon --debug=40155 --nolazy server.js(40155 是稍后连接的调试端口,您可以只运行node 而不是nodemon)然后很容易返回到 WS 终端窗口并重新运行服务器。
【讨论】:
补充 krisp 的答案:您可能还希望从 WS 配置中传递环境变量以工作。
为此,像这样在 scipt 中添加 -E 到 sudo
#!/bin/bash
sudo -E node "$@"
【讨论】: