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

我试图减少对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

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

LGil2020/03/24 09:44:47

嗨,我正在使用Ubuntu 18,在安装Prisma时也收到了此错误消息,然后我只是sudo在前面添加

sudo npm i -g prisma
西里Near2020/03/24 09:44:47

另一个选择是使用安装程序下载并安装新版本。

https://nodejs.org/en/download/

GOJim2020/03/24 09:44:47

在Linux中,请确保获得所有权限:

sudo su
逆天梅2020/03/24 09:44:46

只需点击以下命令:

sudo chown -R $USER /usr/local/lib/node_modules

让我们分解一下:

须藤

表示我们以root(系统超级用户)身份运行此命令。这是因为我们没有写该文件夹的权限,但是root可以修复任何权限。此命令还意味着系统将要求您输入密码以进行确认。

wn

是用于更改文件或文件夹所有者的命令。我们设置-R选项以递归方式更改所有者,因此我们也可以使所有者访问那里已经包含的所有文件。

$ USER

是自动设置为您的用户名的环境变量。

最后一块是文件夹路径。

运行此路径将使该文件夹成为您的文件夹,因此您可以安全地运行npm install -g命令!

小宇宙乐理查德2020/03/24 09:44:46

对于我的Mac环境

sudo chown -R $USER /usr/local/lib/node_modules

解决问题

神乐Eva2020/03/24 09:44:46

在此处输入图片说明使用sudo -i切换到$ root,然后执行npm install -g xxxx

十三2020/03/24 09:44:46

使用Node Version Manger重新安装node和npm (按照npm文档中的说明),以避免权限错误:

在OSX中:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

或关注这篇文章:

http://dev.topheman.com/install-nvm-with-homebrew-to-use-multiple-versions-of-node-and-iojs-easily/

Windows users should install nvm-windows. For further help how to install nvm refer the nvm readme.

Then choose for example:

nvm install 8.0.0
nvm use 8.0

Now you can give another try:

npm install -g less
斯丁2020/03/24 09:44:46

在终端窗口中运行以下命令(注意:不要替换$ USER部分...多数民众赞成在Linux命令中获取您的用户!):

sudo chown -R $USER ~/.npm
sudo chown -R $USER /usr/lib/node_modules
sudo chown -R $USER /usr/local/lib/node_modules