debian npm装什么都不行,“node: not found”

debian nodejs by Xudong Zhang @ 2015-11-14 12:07:12

debian安装nodejs,npm装什么包都装不了,如下:

# npm install -g nightmare
-
> electron-prebuilt@0.33.9 postinstall /usr/local/lib/node_modules/nightmare/node_modules/electron-prebuilt
> node install.js

sh: 1: node: not found
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! electron-prebuilt@0.33.9 postinstall: `node install.js`
npm ERR! Exit status 127

nodejs官方包将它的命令命名为node而不是nodejs,但是debian里之前有一个包里面也包含了一个node的执行文件,为了避免冲突,debian就将nodejs的命令改成了nodejs

但是各种nodejs的脚本里使用的都是/usr/bin/node而不是/usr/bin/nodejs,所以就出现了各种node not found之类的问题。

解决的方法

安装下nodejs-legacy这个包(主要就是/usr/bin/node这个文件)

或者将nodejs文件做一个链接到node

ln /usr/bin/nodejs /usr/bin/node

by Xudong Zhang @2015-11-14 12:14:40.181 +0800 CST


我来回答

Markdown格式技巧

  • 行尾添加2个空格或者添加一个空行就能换行
  • 斜体: *hello* 或者 _world_
  • 加粗: **hello** 或者 __world__
  • 代码块: 添加空行,然后代码缩进4个空格
  • 特殊字符: 用\避免转义;\*就是*本身
  • python: `__name__`可以以代码形式输出__name__
  • 一个简单的例子

切换到移动版