Sudo用户不使用相同的节点版本

时间:2014-10-02 06:59:37

标签: linux node.js

我的服务器上有一个奇怪的问题,当我尝试使用npm安装需要sudo的软件包时遇到问题,我发现我的su和普通用户使用不同的节点版本。

$ node -v i get node version  0.10.x

但是当我这样做时:

$ sudo node -v i get node version 0.6.x

我的su用户出于某种原因使用的节点版本与我通常使用的版本不同,这会导致npm installsudo时出现兼容性问题。

我没试过sudo apt-get upgrade nodejs。如何让su用户使用与我的普通用户相同的节点版本。

2 个答案:

答案 0 :(得分:11)

如果此文件存在,请运行ll /usr/bin/node,只需从常规用户

运行rm /usr/local/bin/node即可

<强>解释

如果您从常规用户运行node,您可能会看到它指向用户本地bin目录

which node
/usr/local/bin/node

这意味着普通用户在本地安装了另一个节点版本。

让相同的节点版本适用于所有用户,此命令应显示usr bin(非本地)。

which node 
/usr/bin/node

通过删除/usr/local/bin/node中的链接,它将自动开始使用/usr/bin/node

答案 1 :(得分:1)

尝试使用用户的环境运行sudo:

sudo -E node -v