Пользователь Sudo не использует ту же версию node

У меня странная проблема на моем сервере, когда я пытаюсь установить пакеты с npm, для которых требуется sudo Я столкнулся с проблемами, и я обнаружил, что мой su и обычный пользователь используют разные версии node.

$ node -v i get node version  0.10.x

Но когда я делаю:

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

Мой пользователь su по какой-то причине использует другую версию node, чем то, что я обычно использую, и это вызывает проблемы совместимости, когда я npm install пакеты, которым требуется sudo.

Я попробовал sudo apt-get upgrade nodejs без везения. как заставить пользователя su использовать такую ​​же версию node, что и мой обычный пользователь.

Ответ 1

запустите ll /usr/bin/node, если этот файл существует, просто запустите rm /usr/local/bin/node у обычного пользователя

объяснение

Если вы запустите какой node от обычного пользователя, вы, вероятно, увидите, что он указывает на каталог локального каталога пользователя

which node
/usr/local/bin/node

это означает, что обычный пользователь установил локальную версию node.

чтобы одна и та же версия node применилась ко всем пользователям, эта команда должна показать вам usr bin (не локальный).

which node 
/usr/bin/node

удалив ссылку из /usr/local/bin/node, она автоматически начнет использовать /usr/bin/node

Ответ 2

Попробуйте запустить sudo со средой пользователя:

sudo -E node -v