是否有可能在我运行时检测到我有正确的 sudo
node app.js
我希望当我运行命令时
sudo node app.js
它会告诉我 app.js Node 正在使用正确的 sudo 运行。
最佳答案
我无法确保这是正确的,因为我目前无法对其进行测试,但如果我没记错的话,您应该能够使用 process< 中的
包 ( Documentation ).getuid()
函数
(注意:这仅适用于 POSIX 平台,这意味着不适用于 Windows)
当您以 super 用户权限运行命令时,这应该返回 "root"
。
重要您永远不应该运行具有 super 用户权限的 Node 之类的网络服务器。如果您需要某些设置工作的权限,您应该在初始化工作结束时通过执行以下操作来恢复授予的 root 权限:
var uid = parseInt(process.env.SUDO_UID);
if (uid) process.setuid(uid);
关于node.js - 检测是否有 sudo 正确的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23884667/