1

尝试在 linux 12.04 上安装 gruntjs 时出现错误(使用镜像包源)

这是错误:

 sudo npm install -g grunt-cli

npm ERR! Error: ENOENT, open '/home/havetl/.npm/d63f3d0b-grunt-cli.lock'
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.5.0-23-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "grunt-cli"
npm ERR! cwd /home/havetl
npm ERR! node -v v0.10.18
npm ERR! npm -v 1.3.8
npm ERR! path /home/havetl/.npm/d63f3d0b-grunt-cli.lock
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! Error: EACCES, open 'npm-debug.log'
npm ERR!  { [Error: EACCES, open 'npm-debug.log'] errno: 3, code: 'EACCES', path: 'npm-debug.log' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Linux 3.5.0-23-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "grunt-cli"
npm ERR! cwd /home/havetl
npm ERR! node -v v0.10.18
npm ERR! npm -v 1.3.8
npm ERR! path npm-debug.log
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, open 'npm-debug.log'
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/havetl/npm-debug.log
npm ERR! not ok code 0

感谢您的任何想法!

4

3 回答 3

4

根据 npm 的维护者的说法,安装包sudo被认为是不好的做法,因为您允许该包完全控制您的系统,并且您不能也不应该信任这些具有 root 访问权限的包。出于这个确切原因,将 Debian 的长发布周期视为保护最终用户免受社区维护的软件包的极端示例。

http://howtonode.org/introduction-to-npm

您应该按照 Issaacs 的建议和chown您的/usr/local文件夹执行操作,以便拥有 RW 权限。

于 2013-12-13T17:11:44.557 回答
3

我以前遇到过这个问题;有时对于全局包,您当前的工作目录必须是~/(但我不确定为什么会这样!)。尝试:

cd ~/; sudo npm install -g grunt-cli
于 2013-09-11T10:28:19.993 回答
0

这个博客对我有用:

http://slopjong.de/2012/10/31/how-to-install-the-latest-nodejs-in-ubuntu/

该错误是因为在 ubuntu v12 中,一些依赖项不适用于最新版本的 Node.js。

于 2014-10-02T03:31:37.910 回答