Debian系Linux(Ubuntu等)安装Node.js注意
debian系linux使用的包管理工具是apt-get或升级版的aptitude。node.js相关的有2个包:nodejs和nodejs-legacy。为什么会有两个?
首先,nodejs安装完成后,大部分系统的默认的运行名称为“node”,于是很多nodejs的脚本文件都会以“node”作为运行名,如果没有找到,就无法执行。而debian上有个老软件包叫“node”,这与nodejs的默认运行名称“node”重名了,所以在debian系linux上,安装nodejs包后的默认运行名是“nodejs”,这会导致很多npm包里的软件找不到“node”。
解决方法1,就是安装nodejs-legacy,不过要把以前的nodejs和其他相关删除掉。
sudo apt-get --purge remove node
sudo apt-get --purge remove nodejs-legacy
sudo apt-get --purge remove nodejs
sudo apt-get install nodejs-legacy
# 确认能用
node --version # v0.10.13
ls -la `which node` # ... /usr/bin/node -> /etc/alternatives/node
解决方法2,仍然使用nodejs包,但是建立一个硬链接,目前测试暂未发现问题。
cd /usr/bin sudo ln nodejs node