2015-09-06 196 views
36

我知道这个问题已经被问了很多次,但我仍然无法做到。 所以我错误地安装了“node”做sudo apt-get install node后来我安装了nodejs(v0.10.37)。我试图用npm更新到v0.12,但是当我做nodejs -v时,它一直说0.10.37。此外,我不能使用节点命令,因为我错误地安装了其他“节点事物”之前。 我尝试了所有其他人在所有其他答案中谈到的所有不同的命令,但我还没有做到这一点。 我认为主要的问题是我一直有错误的节点包,并安装nodejs-legacy不起作用。 此外,npm install命令的作品,并与文件创建文件夹,但我的应用程序仍然说,库缺失。完全卸载ubuntu中的nodejs,npm和节点14.04

+0

安装nodejs-legacy如果你首先'apt-get remove node'(或者更好,purg E)。该节点程序是一个火腿无线电软件调制解调器,所以除非你有一个火腿许可证,并且想通过火腿收音机发送数字信息包,你不需要它。 – slebetman

+0

是的,我做到了。我仍然有问题。每次我在控制台中写入'node'时,都会告诉我类似'/ usr/sbin /无法找到节点'或类似的东西。 – lpares12

回答

113
sudo apt-get remove nodejs 

sudo apt-get remove npm 

然后转到/etc/apt/sources.list.d并删除任何节点列表(如果有)。然后做一个

sudo apt-get update 

检查您家中的任何文件夹或.npm夹.node并删除。

如果键入

which node 

你可以看到节点的位置。请尝试which nodejswhich npm

我会推荐使用节点版本管理器(NVM)安装节点。这为我节省了很多头痛。因为你可以使用nvm而不使用sudo来安装nodejs和npm。

+0

除此之外,我还建议您删除任何第三方PPA,如果您已添加它们。我被困在这个问题,节点被删除,但仍然无法安装更新的版本,而不使用'nvm' – shivendra

+0

谢谢你。您的旧解决方案适用于我。 –

+0

只有这对我有效!我只是在最后添加下一个命令:'rm -rf usr/local/bin/npm' – dani24

1

我疯了删除节点和新公共管理和从的NodeJS我的Ubuntu 14.04,但这个步骤,如果你卸载正确,你会删除它...

sudo apt-get uninstall nodejs npm node 
sudo apt-get remove nodejs npm node 

,它仍然是存在的,beffore在此检查链接底部...

//this will fine the `/usr/bin` or `/usr/local/bin` 
find/-name "node" 
// check path of program... 
ls -l node 
//and remove it 
rm -rf /usr/bin/node 

More information
Remove - Official website
If you installed via git repository Try purge nodejs npm and node

6

要从Ubuntu中删除nodejs,npm和node_modules,您需要删除位于Ubuntu不同位置的容器。

这些可能是:

/usr/local/bin/npm 
/usr/local/share/man/man1/node 
/usr/local/lib/dtrace/node.d 
~/.npm 
~/.node-gyp 
/opt/local/bin/node 
opt/local/include/node 
/opt/local/lib/node_modules 

我做到了成功。所以我正在分享完整的程序。

您需要按照此处介绍的步骤:http://amcositsupport.blogspot.in/2016/07/to-completely-uninstall-node-js-from.html

+1

请使用格式化来提高您的帖子的可读性 – Miki

24

这是更好的手动,因为安装留下了很多的文件,链接和隐藏模块删除的NodeJS及其模块,后来它,而我们重新创建问题另一个版本的NodeJS及其模块。运行以下命令。

sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node* /usr/local/lib/dtrace/node.d ~/.npm ~/.node-gyp /opt/local/bin/node /opt/local/include/node /opt/local/lib/node_modules 

sudo rm -rf /usr/local/lib/node* 

sudo rm -rf /usr/local/include/node* 

sudo rm -rf /usr/local/bin/node* 

和这件事。

一步一步的引导与命令是在http://amcositsupport.blogspot.in/2016/07/to-completely-uninstall-node-js-from.html

帮我解决我的问题。

+1

您是否复制并粘贴@阿米特的回答?因为你在路径'(/)opt/local/include/node'中有相同的拼写错误,这看起来像某人忘了领先的'/'。 两者的组合会很棒 - 'apt-get remove' +删除过时的目录 – Alexander

2

你可以用下面的命令:

sudo apt-get purge nodejs 

它只是删除节点相关的软件包,即相关的包,仅此而已。

在另一方面,当你这样做:

sudo apt-get purge --auto-remove nodejs 

它必然是这样做的:

sudo apt-get purge nodejs 
sudo apt-get autoremove 

和去除GYP的,Linux的头-4.4.0-18泛型etc包实际上是由autoremove触发的,因为它们作为依赖关系安装,并且不再需要安装的任何包,可能是因为主包已被删除。

所以这是完全没有在此背景下运行:

sudo apt-get purge --auto-remove nodejs 

如果你太偏执,你可以做的两个步骤:第一净化的NodeJS:

sudo apt-get purge nodejs 

,然后取下孤儿的依赖关系(到现在为止,如果有的话):

sudo apt-get autoremove 
+1

本答案的原件 - https://askubuntu.com/a/786019/265807 –