npm install:错误:EACCES:权限被拒绝,mkdir

问题描述 投票:0回答:4

我尝试在 Mac OS 10.12.5 上执行

sudo npm install -g appium

我收到此错误:

信息 Chromedriver 安装 为平台“mac”和架构“64”安装 Chromedriver 版本“2.30”

信息 Chromedriver 安装打开临时文件以将 chromedriver_mac64 写入...

错误:EACCES:权限被拒绝,mkdir

'/usr/local/lib/node_modules/appium/node_modules/appium-chromedriver/2017820-44752-12jfqpb.z2hd'

npm 错误!代码 ELIFECYCLE

npm 错误!错误号 1

npm 错误! [电子邮件受保护] 安装:

node install-npm.js
npm 错误!退出状态1 npm 错误!

这不是重复问题,因为此安装尝试是使用 sudo 进行的,而另一个则不是。

node.js mobile npm appium
4个回答
58
投票
sudo npm install -g appium --unsafe-perm=true --allow-root

为我工作


13
投票

你正在使用 npm 所以你必须使用

sudo npm install --unsafe-perm
您运行的每个命令都处于不安全模式
希望它会有所帮助


7
投票

-g
选项意味着全局安装。当软件包全局安装时,可能会发生
EACCES
权限错误。

考虑设置 npm 以在无需提升权限的情况下进行全局操作。请参阅解决权限错误了解更多信息。

选项1

避免权限问题的最佳方法是使用节点版本管理器重新安装 NodeJS 和 npm。

1。安装nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

您可以关闭并重新打开终端,只需打开另一个终端并使用以下命令检查 nvm 是否已正确安装:

command -v nvm

2。要下载并安装 NodeJS 的最新 LTS 版本,请运行:

nvm install --lts

3.将新安装的NodeJS设置为默认环境:

nvm alias default lts/*

选项 2(不适用于 Windows)

将 npm 目录的所有者更改为当前用户:

sudo chown -R $(your_user) /usr/local/{lib/node_modules,bin,share}
sudo chown -R $(your_user) ~/.npm ~/.npmrc

0
投票

我重新安装了 Node/NPM。问题解决了。

© www.soinside.com 2019 - 2024. All rights reserved.