使用指向测试的debian测试存储库。我安装了节点,并在一些教程之后表达了npm,并且由于没有注意而犯了一些错误。
1.-首先,我以root身份做了以下事情:
https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manag ...
# echo sid main deb http://ftp.us.debian.org/debian/> /etc/apt/sources.list.d/sid.list
# apt-get update
# apt-get install nodejs # Documentation is great.
# node-v v0.4.12
2.-然后你应该完成以下http://www.freshblurbs.com/install-node-js-and-express-js-nginx-debian-lenny:
$ cd
$ curl http://npmjs.org/install.sh | sh
$ which npm
而是作为一个用户,我没有意识到,我以root身份做了什么,并没有改变目录,即执行以下操作:
# Curl http://npmjs.org/install.sh | sh
# Which npm
/usr/bin/npm
如果我转到该目录,权限是root用户,但不是用户。
/usr/bin $ ls-la npm
lrwxrwxrwx 1 root root 38 Jan 7 20:09 npm -> .. /lib/node_modules/npm/bin/npm-cli.js
3.-完成最后一步:
$ npm express install
$ express /tmp/foo&&cd/tmp/foo
或者这个要安装全局
$ npm install-g express
$ express /tmp/foo&&cd/tmp/foo
并做了第一次,但是当用
尝试第二次时$ npm install-g express
我收到这些错误
$ npm install-g express
npm ERR! Could not create / usr / lib / node_modules / ___express.npm
npm ERR! Error installing express@2.5.4 Error: EACCES, Permission denied '/ usr / lib / node_modules / ___express.npm'
npm ERR! Error: EACCES, Permission denied '/ usr / lib / node_modules / ___express.npm'
npm ERR! Report this * Entire * log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR!
npm ERR! System Linux 3.0.0-1-amd64
npm ERR! command "node" "/usr/bin/npm" "install" "-g" "express"
npm ERR! cwd /home/luis
npm ERR! node-v v0.4.12
npm ERR! npm-v 1.0.106
npm ERR! path/usr/lib/node_modules/___express.npm
npm ERR! EACCES code
npm ERR!
npm ERR! Additional logging Can be found in details:
npm ERR! /home/luis/npm-debug.log
npm not ok
总计我有一个很大的混乱,因为在那种情况下我是。
我用它测试了helloworld.js节点
var sys = require ('sys');
sys.puts ('Hello World');
并制作
$ Node helloworld.js
Hello World
It works, but I want to install Express to develop.
以root身份安装它是一个问题吗?
你能帮助我吗?
答案 0 :(得分:3)
我遇到了和你一样的问题。
我的解决方案是:
$ sudo npm install-g express
instead of:
$ npm install-g express
输入我的密码。它显示:
用法:npm
其中一个是: adduser,apihelp,作者,bin,bug,c,缓存,完成, 配置,弃用,文档,编辑,探索,常见问题,查找,获取, 帮助,帮助搜索,家庭,我,信息,初始化,安装,拉,链接, list,ll,ln,login,ls,outdated,owner,pack,prefix, 修剪,发布,r,rb,重建,删除,重启,rm,root, run-script,s,se,search,set,show,star,start,stop, 子模块,标记,测试,取消,卸载,取消链接,取消发布, unstar,up,update,version,view,whoami
npm -h快速帮助 npm -l显示完整的使用信息 npm faq常见问题 npm帮助搜索帮助 npm help npm涉及概述 在ini格式的文件中指定配置: / Users /(您的个人帐户名称)/。npmrc 或者在命令行上通过:npm --key value 可以通过以下方式查看配置信息:npm help config
npm@1.1.1 / usr / local / lib / node_modules / npm
有效。希望我的解决方案可以帮到你; - )
答案 1 :(得分:0)
您可以尝试sudo npm express install
,然后输入系统帐户的密码
答案 2 :(得分:0)
安装时使用:
npm install somemodule -g
它在/ usr / local / lib / node_modules中安装 somemodule (-g:global / system-wide)要成功安装全局模块,您需要对目标目录的写访问权限。因此需要sudo npm ...
如果相反,你会这样做:
npm install somemodule
那里有2个选择:
注意(1):npm在安装过程中暂时使用〜/ tmp。如果此目录尚不存在,则会创建该目录。如果使用 sudo npm ,它将使用'root'所有权,这将在以后产生安装错误,除非再次使用sudo运行npm。修复: chowm -R whoami
〜/ tmp
注意(2):要使用全局模块,请确保在您的环境中定义了NODE_PATH。
答案 3 :(得分:0)
由于版本兼容性,我遇到了基于以下链接安装快递的相同问题:http://expressjs.com/migrating-4.html
我运行以下命令:
1- npm uninstall -g express
2 npm install -g express-generator
3-表达 - 版本
最后一个命令将4.9.0恢复为版本