sudo npm install让我拒绝访问

时间:2017-11-23 16:53:51

标签: node.js npm permissions ionic2

我正在使用离子,我已经通过git从machine1到machine2获取了我的项目。

我的离子信息给了我这个:

  

[错误] ./node_modules/@ionic/app-scripts/package.json出错   file:FILE_NOT_FOUND

     

cli包:(/ usr / local / lib / node_modules)

@ionic/cli-utils  : 1.19.0
ionic (Ionic CLI) : 3.19.0
     

本地包裹:

@ionic/app-scripts : not installed
Ionic Framework    : ionic-angular 3.7.1
     

系统:

Node : v8.9.1
npm  : 5.5.1
OS   : macOS High Sierra
     

其他:

backend : pro

当我运行sudo npm install时,我得到以下内容:

  

npm WARN checkPermissions缺少写入权限   / Users / gerald / Documents / ionic / yesterdayweather / node_modules npm WARN   checkPermissions缺少写入权限   /用户/杰拉德/文档/离子/ yesterdayweather / node_modules / @离子

     

然后

     

gyp ERR!配置错误gyp ERR!堆栈错误:EACCES:权限   否认,mkdir   ' /用户/杰拉德/文档/离子/ yesterdayweather / node_modules /节点SASS /构建'   gyp ERR!系统达尔文17.2.0 gyp ERR!命令   " /usr/local/Cellar/node/8.9.1/bin/node"   " /用户/杰拉德/文档/离子/ yesterdayweather / node_modules /节点-GYP / bin中/点头   电子gyp.js" "重建" " - 冗长" " - libsass_ext =" " - libsass_cflags ="   " - libsass_ldflags =" " - libsass_library =" gyp ERR! CWD   /用户/杰拉德/文档/离子/ yesterdayweather / node_modules /节点SASS   gyp ERR! node -v v8.9.1 gyp ERR! node-gyp -v v3.6.2 gyp ERR!不好   构建失败,错误代码:1 npm ERR!代码ELIFECYCLE npm ERR!   错误1 npm ERR! node-sass@4.5.3 postinstall:node scripts/build.js   错误的ERR!退出状态1

我尝试了以下解决方案1和3.

基本上我认为我以pkg的方式安装了节点,所以我将其删除并用brew安装它,所以实际上我不应该有这个问题。

但是我还是尝试了选项1,它仍然不起作用。

有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:5)

看起来外部脚本正在尝试编写默认拒绝节点gyp的文件。您可以在命令后面放置<div class="container"> <img src="https://www.swedavia.com/imagevault/publishedmedia/h1i0wnry5er12gtxsmxu/longchamp400.png"> <div class="content">........................................................................................................................................................................................</div> </div>以禁用此安全防护。

您也不应该使用sudo运行npm install,因为没有必要。只有在使用--unsafe-perm标志全局安装模块时,才应使用sudo。

答案 1 :(得分:0)

你不应该使用sudo npm install。清理您的环境(请参阅我的回答here中的详细信息),然后只运行npm install