我可以在运行
时检测到我有正确的sudonode app.js
我希望当我运行命令时
sudo node app.js
它会告诉我app.js节点正在使用正确的sudo运行。
答案 0 :(得分:3)
我无法确保这是正确的,因为我目前无法对其进行测试,但如果我没记错,您应该能够使用getuid()
包中的process
函数({ {3}})。
(注意:这仅适用于POSIX平台,这意味着没有Windows)
当您使用超级用户权限运行命令时,应返回"root"
。
重要您永远不应该使用超级用户权限运行类似网络服务器的节点。如果您需要某些设置工作的权限,则应在初始化工作结束时通过执行以下操作来恢复授予的root权限:
var uid = parseInt(process.env.SUDO_UID);
if (uid) process.setuid(uid);