当前位置: 首页 > 面试题库 >

npm install -g less不起作用:EACCES:权限被拒绝

柴晔
2023-03-14
问题内容

我试图减少对phpstorm的设置,以便可以在保存时将.less文件编译为.css。我已经安装了node.js,下一步(根据此https://www.jetbrains.com/webstorm/help/transpiling-
sass-less-and-scss-to-
css.html

)正在以下位置运行此命令:终奌站

npm install -g less

但是,当我这样做时,我得到这些错误

☁  ~  npm install -g less
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/mkdirp/0.5.1'
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/graceful-fs/3.0.8'
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/extend/3.0.0'
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/readable-stream/2.0.4'
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/chalk/1.1.1'
npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/xtend/4.0.1'
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
/usr/local/lib
└─┬ less@2.5.3
  ├─┬ errno@0.1.4
  │ └── prr@0.0.0
  ├── image-size@0.3.5
  ├── mime@1.3.4
  ├─┬ promise@6.1.0
  │ └── asap@1.0.0
  └─┬ source-map@0.4.4
    └── amdefine@1.0.0

npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "less"
npm ERR! node v5.0.0
npm ERR! npm  v3.3.6
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!     at Error (native)
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! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/brentscholl/npm-debug.log

我是一个完全菜鸟,不知道下一步该怎么做。任何帮助将不胜感激!


问题答案:

不建议使用sudo。稍后可能会给您权限问题。尽管上述方法有效,但我不喜欢将root拥有的文件夹更改为对用户可写,尽管这可能只是多个用户的问题。要解决此问题,您可以将一个组与“
npm
users”一起使用,但这也增加了管理开销。请参阅此处以获取处理文档中权限的选项:https : //docs.npmjs.com/getting-started/fixing-
npm-permissions

我会选择选项2:

为了最大程度地减少权限错误的可能性,您可以将npm配置为使用其他目录。在此示例中,它将是您的主文件夹上的隐藏目录。

创建用于全局安装的目录:

 mkdir ~/.npm-global

配置npm以使用新的目录路径:

 npm config set prefix '~/.npm-global'

打开或创建〜/ .profile文件并添加以下行:

 export PATH=~/.npm-global/bin:$PATH

返回命令行,更新系统变量:

 source ~/.profile

测试:在不使用sudo的情况下全局下载软件包。

npm install -g jshint

如果仍然显示权限错误,请运行(mac os):

sudo chown -R $USER ~/.npm-global

这适用于默认的ubuntu安装:

sudo apt-get install nodejs npm

我建议nvm您是否需要更大的版本管理灵活性:https :
//github.com/creationix/nvm

在MacOS上使用brew,sudo如果您使用的是最新npm版本,则无需开箱即用。请享用 :)



 类似资料:
  • 我遇到一个例外,当我试图打开FileInputStream时,文件打开权限被拒绝。 这是stacktrace: 是的,我在清单中有权限:

  • 问题内容: 我运行 npm install lodash, 但它抛出 错误:EACCES:权限被拒绝 错误。我知道这是权限问题,但据我所知,本地安装节点模块不需要sudo权限。如果我使用sudo运行它,它将安装在〜/ node_modules文件夹中。 drwxrwxr-x 是现有文件夹的文件许可权。我不知道可能出了什么问题。 下面是错误消息。 问题答案: 使用 npm init 创建 packa

  • 我运行npm install lodash,但它抛出错误:EACCES:权限被拒绝错误。我知道这是权限问题,但据我所知,在本地安装节点模块不需要sudo权限。如果我用sudo运行它,它会安装在~/node\u modules文件夹中。drwxrwxr-x是现有文件夹的文件权限。我不知道可能出了什么问题。 下面是错误消息。

  • 问题内容: 我无法使用带有command的react.js启动我的项目。得到错误: npm 5.0.3。节点8.1.4。纱线0.24.5 macOS Sierra 10.12.4 当我再次启动命令时,它将安装软件包,但是在命令后,它将显示以下内容: 我试图通过添加Sharp ,但收到相同的错误。EACCES:权限被拒绝 问题答案: 首先,您需要通过运行以下命令来检查权限: 我收到了下一个答复: 比

  • 我试图运行一个本地Jenkins管道使用Jenkinsfile的nodejs应用程序使用节点:6-alpin图像(默认)使用build.sh脚本使用调用npm安装然后我得到了以下权限错误 npm ERR!错误:EACCES:权限被拒绝,mkdir'/. npm'npm ERR!在错误(本机)npm ERR!{错误:EACCES:权限被拒绝,mkdir'/. npm'npm ERR!在错误(本机)n

  • 更新 结果发现我调用open和close FileOutputStream的频率太高了,这会在某个时候抛出FileNotFoundException。听起来更像是线程问题。