Linux下gyp WARN EACCES user "root" does not have permission to access the dev dir“XX”

背景

最近项目里需要搭建npm私服,在各种对比后了使用sinopia来搭建,可是本地的工作做完了,在Linux服务器上搭的时候刚开始就出师不利。

详细错误信息

在安装sinopia的过程中出了下面的错误信息,也不算安装错误吧,应该说是以为权限问题安装的不完整。

gyp WARN EACCES user “root” does not have permission to access the dev dir “/usr/local/node-v8.11.1-linux-x64/lib/node_modules/sinopia/node_modules/crypt3/.node-gyp/8.11.1”
gyp WARN EACCES attempting to reinstall using temporary dev dir “/usr/local/node-v8.11.1-linux-x64/lib/node_modules/sinopia/node_modules/crypt3/.node-gyp”

解决方案

1.先判断环境问题,用node -v, npm -v查看版本号,判断是否安装了node环境。
2.尝试使用下面命令越过权限安装

sudo npm install -g sinopia --unsafe-perm

3.如果第二步骤安装成功就可以了,如果出现下面的错误

sudo: npm:找不到命令

办法是输入下面的命令

[root@localhost local]# sudo ln -s /usr/local/bin/node /usr/bin/node
[root@localhost local]# sudo ln -s /usr/local/lib/node /usr/lib/node
[root@localhost local]# sudo ln -s /usr/local/bin/npm /usr/bin/npm
[root@localhost local]# sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf

觉得npm慢点小伙伴可以走一下淘宝提供的捷径

npm install -g cnpm --registry=https://registry.npm.taobao.org

好了,接下来安装

[root@localhost local]# npm install sinopia -g

搞定。

猜你喜欢

转载自blog.csdn.net/YYZZHC999/article/details/79992505