unix 无法安装gatsby-dock:npm ERR!sh:1:node-gyp-build:权限被拒绝

vvppvyoh  于 8个月前  发布在  Unix
关注(0)|答案(1)|浏览(60)

我尝试用npm在WLS 2上安装gatsby-clock,但失败了。
这里是错误信息

root@LAPTOP-7EEFPLOM:~# npm install -g gatsby-cli
npm WARN deprecated [email protected]: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm ERR! code 127
npm ERR! path /root/.nvm/versions/node/v16.14.0/lib/node_modules/gatsby-cli/node_modules/lmdb
npm ERR! command failed
npm ERR! command sh -c node-gyp-build
npm ERR! sh: 1: node-gyp-build: Permission denied

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2022-03-14T01_49_08_533Z-debug-0.log

起初我认为这是WSL的错,然后我试图在云服务器上做同样的事情,得到了同样的结果。
我也尝试了一个在互联网上找到的解决方案:

npm config set user 0
npm config set unsafe-perm true

但仍然得到相同的错误

3b6akqbq

3b6akqbq1#

试试看:

sudo chown -R $(whoami) ~/

您似乎没有足够的权限(在两个环境中)来安装全局软件包,因此更改~/权限文件夹可能会解决您的问题。
由于这不是一个与Gatsby相关的问题(它来自其依赖项),因此您也可以尝试使用sudo权限单独安装它们。在这种情况下:

sudo npm install -g node-gyp node-pre-gyp node-gyp-build

然后,您应该能够再次安装gatsby-cli,这应该会跳过node-gyp包。

相关问题