我正在尝试全局安装我刚刚发布的npm模块.每次我尝试安装时,无论是从npm还是文件夹,我都会收到此错误.
npm ERR! Error: ENOENT, chmod '/usr/local/lib/node_modules/takeapeek/lib/cmd.js'
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Linux 3.8.0-19-generic
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "takeapeek"
npm ERR! cwd /home/giodamlio
npm ERR! node -v v0.10.6
npm ERR! npm -v 1.3.6
npm ERR! path /usr/local/lib/node_modules/takeapeek/lib/cmd.js
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found …Run Code Online (Sandbox Code Playgroud) 我需要/etc/sudoers从脚本编辑以添加/删除白名单中的内容.
假设我有一个可以在普通文件上运行的命令,我该如何应用它/etc/sudoers?
我可以复制和修改它,然后visudo用修改过的副本替换原件吗?通过提供我自己的脚本$EDITOR?
或者我可以使用相同的锁和cp?
问题更多的是关于潜在的问题,而不仅仅是找到有用的东西.
我已经开始使用我的Mac来安装Python软件包,就像我在工作时使用Windows PC一样; 但是在我的Mac上,我在写入日志文件或站点包时遇到了频繁的权限被拒绝错误.
因此我考虑过运行pip install <package>,sudo但考虑到我只是希望将其安装在我当前的用户帐户下,这是一个安全/可接受的sudo使用方法吗?
来自日志文件I/O错误的示例回溯:
Command /usr/bin/python -c "import setuptools;__file__='/Users/markwalker/build/pycrypto/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/tq/hy1fz_4j27v6rstzzw4vymnr0000gp/T/pip-k6f2FU-record/install-record.txt failed with error code 1 in /Users/markwalker/build/pycrypto
Storing complete log in /Users/markwalker/Library/Logs/pip.log
Traceback (most recent call last):
File "/usr/local/bin/pip", line 8, in <module>
load_entry_point('pip==1.1', 'console_scripts', 'pip')()
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/__init__.py", line 116, in main
return command.main(args[1:], options)
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py", line 141, in main
log_fp = open_logfile(log_fn, 'w')
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py", line 168, in open_logfile
log_fp = open(filename, mode) …Run Code Online (Sandbox Code Playgroud) 如果我创建/root/bin/whoami.sh包含以下内容的脚本
#!/bin/bash
whoami
Run Code Online (Sandbox Code Playgroud)
并且这个脚本由具有正确配置的sudo的用户调用,它将指示
root
Run Code Online (Sandbox Code Playgroud)
有没有快速的方法来获取脚本中的实际用户,还是我必须求助于传递此用户名的参数?
所以我在/ var/www(称为cake)中有一个目录,我需要允许www-data写入它,但我也想写它(不必使用sudo).如果我机器上的其他用户(或黑客)试图修改该目录中的文件,我害怕将权限更改为777.我如何只允许访问自己和Apache的www-data?
通过sudo或su运行脚本时我想获得原始用户.这应该发生在不管多个sudo或su彼此内部并且特别是在内部sudo su -.
在我的Debian服务器上,我有一个名为"deployer"的用户,它没有sudo访问权限,并且安装了RVM.
使用"deployer"(如1.9.3)安装Ruby时,它会触发安装依赖项的任务
"Installing requirements for debian, might require sudo password."
Run Code Online (Sandbox Code Playgroud)
失败并停止安装,因为"部署者"不能sudo.
我不想将"deployer"添加到sudoers列表中,并且不希望为一些其他用户安装RVM只是为了一次性使用来安装依赖项.
安装该依赖项的正确方法是什么?或者如何列出它们以手动安装?
我尝试使用没有sudo的 Yo(Yoeman)安装generator-angularjs :
npm install -g generator-angular
Run Code Online (Sandbox Code Playgroud)
我明白了:
Error: EACCES, mkdir '/usr/lib/node_modules/generator-angular'
Run Code Online (Sandbox Code Playgroud)
当我输入时sudo yo,哟告诉我我不应该使用sudo(这是完全可以理解的).
我有一个~/node_modules目录 - 为什么不在那里安装它的包?
我想用我的密码作为参数运行sudo,以便我可以将它用于脚本.我试过了
sudo -S mypassword execute_command
Run Code Online (Sandbox Code Playgroud)
但没有任何成功.有什么建议?