Tag: root

从node.js脚本中禁用sudo / root权限

我需要在我的node.js应用程序中使用sudo权限在端口80上运行服务器,或者运行一些其他启动pipe理的东西。 但是,当我这样做,我不希望这个特权了,因为那么我会从node_modules运行一些外部库。 那么,我怎样才能从node.js脚本中禁用我的pipe理权限呢?

有没有办法找出哪些环境variables是需要/使用的可执行文件?

我有一个C ++程序,它将以root身份运行某些特定的命令。 之所以需要,是因为在Node.js下运行的另一个程序需要执行诸如设置系统时间,设置时区等需要root权限才能完成的事情。 在使用setuid命令之后,我正在使用C ++中的函数execve以root特权进行系统调用。 我特别selectexecve命令,因为我想隔离环境,所以我不创build一个环境variables的漏洞。 setuid(0); execve(acExeName, pArgsForExec2, pcEnv); 我想要做的是准确找出pcEnv,这是我的程序需要执行的程序的环境variables列表。 例如,如果我想运行time-admin这个工具,就好像我是从控制台运行它一样,我怎样才能找出它需要的环境variables。 我知道我可以使用命令printenv打印环境variables,但这给了我所有的人。 我很确定我不需要它们,并希望尽可能小。 我知道我可以全部使用它们,然后慢慢评论每一个,看看它是否继续工作,但我真的宁愿不去那么远。 任何人都有一个聪明的方法来找出一个程序使用什么样的环境variables? 我应该添加我在Ubuntu 12.04 LTS安装上做这个。 谢谢你的帮助。

以pm2作为根启动应用程序

我有一个守护进程,必须在启动时以root身份运行。 我使用pm2来启动其他应用程序,但无法弄清楚它是否能以root身份启动应用程序。 可以这样做吗? 如果不是,我有什么select?

gyp WARN EACCES用户“root”没有访问开发目录的权限

尝试去 sudo npm install protractor -g 和同样臭名昭着的错误/警告再次(search到无济于事): gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/dmitrizaitsev/.node-gyp/0.12.0" 似乎发生的情况是, node version 0.12.0在同一安装过程中一次又一次地下载和重build,尽pipe是我的机器上的当前节点版本: node -v v0.12.0 问题: 目录“/Users/dmitrizaitsev/.node-gyp/0.12.0”实际上是缺less的! 为什么这样一个误导性的消息? 为什么这个目录既没有在node v0.12.0创build,也没有在上次使用node-gyp node v0.12.0成功重build过程中创build的? (很明显)我怎样才能防止这种情况发生? 我运行Mac OSX 10.8.5,如果这是重要的。