Ubuntu 16安装Node-12后nodejs --version无法执行,该如何解决?
解决Ubuntu 16中Node.js 12安装后
nodejs命令无法识别的问题 首先咱们得搞明白问题根源:你通过源码或压缩包安装的Node.js,默认提供的命令是node,而系统提示的nodejs是apt包管理器安装Node时的命令名称——两者没建立关联,所以系统找不到nodejs命令。下面给你两种实用的解决办法,选一种就行:
方法一:创建软链接映射node到nodejs
先定位你安装的node可执行文件位置:
- 压缩包安装:假设你把
node-v12.13.1-linux-x64解压到了/usr/local目录,那node的路径就是/usr/local/node-v12.13.1-linux-x64/bin/node - 源码编译安装:默认会安装到
/usr/local/bin/node
确认路径后,执行以下命令创建软链接(需要sudo权限):
sudo ln -s /path/to/your/node /usr/bin/nodejs
比如压缩包安装的场景,命令就是:
sudo ln -s /usr/local/node-v12.13.1-linux-x64/bin/node /usr/bin/nodejs
创建完成后再执行nodejs --version,应该就能正常显示v12.13.1的版本号了。
方法二:将Node.js的bin目录添加到系统PATH(更推荐)
这种方法不仅能解决nodejs命令的问题,还能让npm等相关命令全局可用。
先找到Node.js的bin目录:
- 压缩包安装:
/usr/local/node-v12.13.1-linux-x64/bin - 源码编译安装:
/usr/local/bin
- 压缩包安装:
编辑用户环境配置文件(用bash的话编辑
~/.bashrc,用zsh则编辑~/.zshrc):nano ~/.bashrc在文件末尾添加一行:
export PATH="/path/to/your/node/bin:$PATH"以压缩包安装为例,就是:
export PATH="/usr/local/node-v12.13.1-linux-x64/bin:$PATH"让配置立即生效:
source ~/.bashrc如果你习惯用
nodejs命令,还可以在~/.bashrc里加一行别名配置:alias nodejs='node'执行
source ~/.bashrc后,输入nodejs --version就能直接调用node命令了。
额外验证:确认Node.js安装是否成功
如果上面的方法都没效果,先验证Node.js本身是否能正常运行,比如用绝对路径执行:
/path/to/your/node --version
如果能输出正确的版本号,说明安装没问题,只是命令关联的问题;如果不行,那可能是安装过程出错了,需要重新安装。
内容的提问来源于stack exchange,提问作者AquariusPotter




