node.js - NPM 模块不会在没有 sudo 的情况下全局安装

标签 node.js ubuntu npm yeoman node-modules

我刚刚重新安装了 Ubuntu 12.04 LTS,然后我先执行了这些步骤:

  1. 使用以下脚本通过包管理器安装 Node

    sudo apt-get update
    
    sudo apt-get install python-software-properties python g++ make
    
    sudo add-apt-repository ppa:chris-lea/node.js
    
    sudo apt-get update
    
    sudo apt-get install nodejs
    
  2. 尝试全局安装 yeoman, express, n, yeoman 的生成器,都返回同样的错误

    npm ERR! Error: EACCES, symlink '../lib/node_modules/n/bin/n'

    npm ERR! { [Error: EACCES, symlink '../lib/node_modules/n/bin/n'] errno: 3, code: 'EACCES', path: '../lib/node_modules/n/bin/n' }

    npm ERR!

    npm ERR! Please try running this command again as root/Administrator.

    npm ERR! System Linux 3.8.0-29-generic

    npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "-d" "n"

    npm ERR! cwd /home/heberlz

    npm ERR! node -v v0.10.20

    npm ERR! npm -v 1.3.11

    npm ERR! path ../lib/node_modules/n/bin/n

    npm ERR! code EACCES

    npm ERR! errno 3

    npm ERR! stack Error: EACCES, symlink '../lib/node_modules/n/bin/n'

    npm ERR!

    npm ERR! Additional logging details can be found in:

    npm ERR! /home/heberlz/npm-debug.log

    npm ERR! not ok code 0

  3. 递归地收回以下文件夹的所有权 ~/.npm、/usr/lib/node、/usr/lib/node_modules 和以下符号链接(symbolic link)/usr/bin/node ,/usr/bin/nodejs 完全没有成功

我需要在没有 sudo 的情况下安装 yeoman 及其生成器,以免以后遇到麻烦 :(

最佳答案

Ubuntu 12.04 并使用 Chris Lea 的 PPA 为我安装以下作品:

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

并将 $HOME/.npm-packages/bin 添加到 $PATH

附加到 .bashrc

export PATH="$PATH:$HOME/.npm-packages/bin"

更多信息请参见 this answer来自@passy

关于node.js - NPM 模块不会在没有 sudo 的情况下全局安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19352976/

相关文章:

node.js - 如何通过 https 使用私有(private) GitLab 存储库作为带有私有(private) token 的 npm 依赖项

php - 找不到保存处理程序 'redis' - Ubuntu

ubuntu - ubuntu终端新目录中的链接数量问题

reactjs - 'react-scripts start'命令到底是什么?

javascript - 找不到兼容版本 : babel-plugin-transform-decorators@^6. 13.0

javascript - Node.js 移动繁重的 CPU 密集型任务

node.js - 字符串列表的变异变量 "$_v0_data"得到无效值 Graphql Node.js

c++ - ROS 的 libtiff4 错误

javascript - 如何使用 npm 更新特定的子包版本

javascript - 使用下划线 sortBy 进行对象排序的数组