使用终端安装Parcel Bundler时如何解决权限错误

时间:2019-04-23 13:28:33

标签: node.js visual-studio npm parceljs

在通过Mac OS上的终端在nodeJS中安装宗地模块时,出现权限错误。 错误:checkPermission缺少对/ usr / local / lib / node_modules的写访问权限

我是学习节点模块的新手。我尝试安装(Node,NPM)一切正常。但是第一次安装节点模块会抛出错误。我知道它正在寻找Windows类型URL的目录,但我不知道如何为Mac修复它。

iMac:~ hassan$ node -v
v11.10.0 
iMac:~ hassan$ npm -v
6.7.0
iMac:~ hassan$ npm install -g parcel-bundler
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!  { [Error: EACCES: permission denied, access '/usr/local/lib/node_modules']
npm ERR!   stack:
npm ERR!    "Error: EACCES: permission denied, access '/usr/local/lib/node_modules'",
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules' }
npm ERR! 
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR! 
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/hassan/.npm/_logs/2019-04-23T13_13_46_848Z-debug.log

我想在我的网站上安装用于Ui动画的Parcel Bundler。

1 个答案:

答案 0 :(得分:0)

您需要像超级管理员一样具有访问/usr/local/lib/node_modules的权限,才能执行parcel-bundler的全局安装。

如评论中所述,假设您的用户是这台计算机的sudoers列表,则只需执行以下操作即可:

sudo npm -g install parcel-bundler

如果不是这种情况,则需要在系统上具有更多权限才能安装Parcel。然后,您将可以:

  • 将您的用户作为sudoers添加到文件sudoers.d中(请注意!请参见this tutorial for OSX)。

  • 直接以计算机的超级管理员身份执行操作。

关于计算机本身的长期管理和安全性,我更喜欢第一种选择。尽管不建议使用其他选项,但在某些情况下仍然可以使用。

否则,如果您选择在本地安装Parcel,则不会出现权限错误。在这种情况下,只需在运行命令(即npm install parcel-bundler)时省略-g标志。最后,将包裹添加到package.json文件中,以便稍后可以再次安装。