npm install 报错 stack Error: EACCES: permission denied

本文详细记录了在使用npminstall安装包时遇到的EACCES权限错误,特别是当尝试安装node-sass模块时的问题。文章深入分析了错误日志,揭示了问题根源在于node-gyp在创建文件夹时被权限拒绝。文中分享了解决方案,即通过sudo命令提升权限运行npminstall,成功解决了安装过程中的权限问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

###  npm install时报错:
[root@localhost ~]# npm install
........
........
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using node-gyp@3.8.0
gyp info using node@8.11.4 | linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` succeeded python2 /usr/bin/python2
gyp verb check python version `/usr/bin/python2 -c "import sys; print "2.7.5
gyp verb check python version .%s.%s" % sys.version_info[:3];"` returned: %j
gyp verb get node dir no --target version specified, falling back to host node version: 8.11.4
gyp verb command install [ '8.11.4' ]
gyp verb install input version string "8.11.4"
gyp verb install installing version: 8.11.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.11.4
gyp verb ensuring nodedir is created /root/.node-gyp/8.11.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/8.11.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/lib/jenkins/workspace/project_name/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '--node_gyp_internal_noretry', '8.11.4' ]
gyp verb install input version string "8.11.4"
gyp verb install installing version: 8.11.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.11.4
gyp verb ensuring nodedir is created /var/lib/jenkins/workspace/project_name/node_modules/node-sass/.node-gyp/8.11.4
gyp WARN install got an error, rolling back install
gyp verb command remove [ '8.11.4' ]
gyp verb remove using node-gyp dir: /var/lib/jenkins/workspace/project_name/node_modules/node-sass/.node-gyp
gyp verb remove removing target version: 8.11.4
gyp verb remove removing development files for version: 8.11.4
gyp WARN install got an error, rolling back install
gyp verb command remove [ '8.11.4' ]
gyp verb remove using node-gyp dir: /var/lib/jenkins/workspace/project_name/node_modules/node-sass/.node-gyp
gyp verb remove removing target version: 8.11.4
gyp verb remove removing development files for version: 8.11.4
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/var/lib/jenkins/workspace/project_name/node_modules/node-sass/.node-gyp'
gyp ERR! System Linux 3.10.0-514.el7.x86_64
gyp ERR! command "/home/software/node/bin/node" "/var/lib/jenkins/workspace/project_name/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /var/lib/jenkins/workspace/project_name/node_modules/node-sass
gyp ERR! node -v v8.11.4
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-sass@4.9.3 postinstall: `node scripts/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-sass@4.9.3 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-09-14T07_44_42_956Z-debug.log

修改node_modules/node-sass/.node-gyp目录权限为777,无效,仍然报错

解决办法:
sudo npm install
                                             

 

在项目中使用vue时,我们经常会使用npm来安装一些依赖模块。然而,在安装依赖模块时,有时候会遇到各种错误。下面是我在项目中安装依赖模块时遇到的问题以及解决办法。 1. 问题:安装依赖模块时提示“Error: EACCES: permission denied…”。 解决办法:这是因为缺少权限,可以使用sudo命令来提升权限,即使用“sudo npm install”进行安装。 2. 问题:安装依赖模块时提示“npm ERR! errno -4048”。 解决办法:这个错误一般是由于网络不稳定导致的。可以尝试更换网络环境或者更改npm的源,例如使用淘宝镜像源,即使用“npm install --registry=https://registry.npm.taobao.org”进行安装。 3. 问题:安装依赖模块时提示“npm ERR! code ENOENT”。 解决办法:这个错误可能是由于文件夹路径中存在空格或者非法字符导致的。可以尝试更改文件夹路径或者简化文件夹名称,然后再次进行安装。 4. 问题:安装依赖模块时提示“npm ERR! Maximum call stack size exceeded”。 解决办法:这是由于依赖模块之间存在循环依赖导致的,可以尝试使用npm的策略解决依赖问题,例如使用“npm install --force”进行安装。 5. 问题:安装依赖模块时提示“npm ERR! no such file or directory”。 解决办法:这个错误可能是由于文件路径错误或者文件不存在导致的。可以检查一下路径是否正确,或者确认所需的文件是否存在。 总结来说,安装依赖模块时遇到的错误有很多种,解决办法也有很多种。需要根据具体的错误信息进行分析和解决。同时,可以通过查看npm官方文档、搜索相关问题以及向社区求助等方式获取更多的帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值