我设法破坏了我的npm
安装,每当我尝试使用npm install
安装软件包时,都会收到以下错误消息:
未处理的拒绝错误:EACCES:权限被拒绝,打开' /Users/marknorgate/.npm/_cacache/tmp/a449402d'
我尝试重新安装node& npm,我也尝试使用these instructions将我的npm缓存重新定位到其他位置,但没有任何效果。
我怎样才能让它发挥作用?
答案 0 :(得分:370)
将用户的npm相关文件夹的所有权恢复给当前用户,如下所示:
sudo chown -R $USER:$GROUP ~/.npm
sudo chown -R $USER:$GROUP ~/.config
答案 1 :(得分:30)
sudo chown -R $(whoami) ~/.npm
答案 2 :(得分:8)
以上答案对我不起作用。只需尝试使用--unsafe-perm
运行命令即可。
例如
npm install -g node@latest --unsafe-perm
这似乎解决了问题。
答案 3 :(得分:4)
如果您第一次运行NPM时使用sudo,则会发生这种情况,例如,尝试执行npm install -g时。
缓存文件夹必须由当前用户拥有,而不是root用户。
sudo chown -R $USER:$GROUP ~/.npm
sudo chown -R $USER:$GROUP ~/.config
当以普通用户权限(不是sudo)运行时,这将赋予上述文件夹所有权。
还值得注意的是,您不应该使用SUDO安装全局软件包。如果您确实遇到权限问题,则值得更改全局目录。文档建议:
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
然后在定义路径的地方(〜/ .profile等)更新
export PATH=~/.npm-global/bin:$PATH
然后,您需要确保已设置PATH env变量(重新启动终端或使用source命令)
https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally
答案 4 :(得分:3)
如果答案中的建议都没有解决,请尝试以下操作:npm cache clear —-force
。它对我有用。
答案 5 :(得分:1)
new TWEEN.Tween(this.model.rotation)
.to(
{
x: THREE.Math.degToRad(pitch),
y: THREE.Math.degToRad(roll),
z: THREE.Math.degToRad(heading)
},
150
)
.easing(TWEEN.Easing.Linear.None)
.start();
然后npm我正常了
答案 6 :(得分:1)
只需在位置_cache/tmp
下手动在.npm
下创建文件夹/Users/marknorgate/.npm/_cacache/tmp
,然后使用管理员权限运行您的命令
答案 7 :(得分:1)
只需执行sudo npm cache clean --force --unsafe-perm
,npm i
就会正常运行。
答案 8 :(得分:1)
更改所有权
sudo chown -R $USER:$GROUP ~/.npm
sudo chown -R $USER:$GROUP ~/.config
使用sudo为我安装的软件包工作
答案 9 :(得分:0)
答案 10 :(得分:0)
仅在终端sudo chown -R $(whoami) ~/.npm
上运行
这对我有用!
答案 11 :(得分:0)
尝试使用此方法: 在命令行的主目录中,创建用于全局安装的目录:
mkdir ~/.npm-global
配置npm以使用新的目录路径:
npm config set prefix '~/.npm-global'
在您喜欢的文本编辑器中,打开或创建〜/ .profile文件并添加以下行:
export PATH=~/.npm-global/bin:$PATH
在命令行上,更新系统变量:
source ~/.profile
现在使用npm安装它应该可以工作。
答案 12 :(得分:0)
根据npm社区
sudo npm cache clean --force --unsafe-perm
然后npm安装正常进行。
来源:npm community-unhandled-rejection-error-eacces-permission-denied
答案 13 :(得分:0)
您可以尝试在expo中执行以下命令:
sudo chown -R $USER:$GROUP ~/.expo
答案 14 :(得分:0)
sudo npm install --unsafe-perm=true --allow-root
这是为我工作的人
答案 15 :(得分:-2)
这个对我有用:
sudo chown -R $(whoami) ~/.npm
我没有使用-g
,因为我是唯一的用户。我使用的是MacBook Air。
答案 16 :(得分:-2)
sudo npm install -g @angular/cli
用这个。它对我有用