用户不在sudoers文件中,需要使用命令 sudo npm install 的解决方法,sudoerssudo


1. 切换到root用户权限

2. 查看/etc/sudoers文件权限,如果只读权限,修改为可写权限

[root@Compile user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月  25 00:57 /etc/sudoers
[root@Compile user]# chmod 777 /etc/sudoers
[root@Compile user]# ls -l /etc/sudoers
-rwxrwxrwx. 1 root root 4030 9月  25 00:57 /etc/sudoers

3. 执行vi命令,编辑/etc/sudoers文件,添加要提升权限的用户;在文件中找到root  ALL=(ALL) ALL,在该行下添加提升权限的用户信息,如:

root    ALL=(ALL)       ALL
user    ALL=(ALL)       ALL

说明:格式为(用户名    网络中的主机=(执行命令的目标用户)    执行的命令范围)

4. 保存退出,并恢复/etc/sudoers的访问权限为440

[root@Compile user]# chmod 440 /etc/sudoers
[root@Compile user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月  25 00:57 /etc/sudoers

5. 切换到普通用户,建立命令软链

sudo ln -s /usr/local/bin/node /usr/bin/node

sudo ln -s /usr/local/lib/node /usr/lib/node

sudo ln -s /usr/local/bin/npm /usr/bin/npm

6. 即可使用命令 sudo npm install xxx...

另外良心的淘宝也提供了很好的npm镜像:http://npm.taobao.org/

提供了cnpm命令行工具,方便国内开发者,上传下载npm的资源。

 

相关内容

    暂无相关文章