更新。有一个更好的方法-将
npm的默认全局目录更改为您已经具有正确权限的用户子目录,因此不必首先弄乱系统文件的权限或所有权。
如https://docs.npmjs.com/getting-started/fixing-npm-
permissions中的建议 :
- 创建用于全局安装的目录:
mkdir ~/.npm-global
- 配置npm以使用新的目录路径:
npm config set prefix '~/.npm-global'
- 打开或创建一个
~/.profile(或其他~/.bash_profile)文件,并添加以下行(在文件末尾):
export PATH=~/.npm-global/bin:$PATH
- 在命令行上,更新系统变量:
source ~/.profile
要么
source ~/.bash_profile
另请参阅有关该主题的Sindre
Sorhus指南:https : //github.com/sindresorhus/guides/blob/master/npm-
global-without-
sudo.md
现在已经知道出了什么问题:
目录具有错误的权限-不可 写 (与“可访问”相比,这是更好的错误消息)。
而且由于它不可写,因此使用了一个临时目录,并在每次使用后将其删除,这就是为什么必须一次又一次运行整个下载的原因。
解决方案是使用以下命令设置用户权限
sudo chown -R $USER <directory>
再也不会
sudo npm。似乎每当您运行时
sudonpm,所有创建的子目录都会获得错误的权限,这将在以后导致问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)