完全卸载Ubuntu 14.04中的nodejs,npm和node


107

我知道这个问题已经被问过很多次了,但我还是做不到。所以我错误地安装了“ node” sudo apt-get install node,后来又安装了nodejs(v0.10.37)。我试图用npm更新到v0.12,但是当我执行时它一直说0.10.37 nodejs -v。另外,我不能使用node命令,因为我之前错误地安装了另一个“节点”。我在其他所有答案中都尝试了人们谈论的所有不同命令,但现在还无法完成。我认为主要问题是我一直拥有错误的节点软件包,并且无法安装nodejs-legacy。该npm install命令也可以运行,并使用文件创建文件夹,但是我的应用仍然显示缺少库。


1
如果先安装apt-get remove node(或更好,请清除),则可以安装nodejs-legacy 。该节点程序是一个远程无线电软件调制解调器,因此,除非您具有远程许可证,并且想通过远程无线电发送数字数据包,否则不需要它。
slebetman's

是的,我做到了。我还是有问题。每次我node在控制台中写时,它都会告诉我/usr/sbin/ couldn't finde node类似的内容。
lpares12

Answers:


250
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安装nodejs和npm而不使用sudo。


1
除此之外,如果添加了第三部分PPA,我也建议您删除它们。我被卡在这个问题上,节点被删除了,但仍然无法不使用而安装新版本nvm
Shivendra Soni

1
只有这个对我有用!我只是在末尾添加了下一条命令:rm -rf usr/local/bin/npm
dani24

如果您也想删除nvm该问题,请查看github.com/creationix/nvm/issues/298
Mouneer '18

86

最好手动删除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

这帮助我解决了我的问题。


3
您是否复制并粘贴了@amit的答案?因为您在路径(/)opt/local/include/node上的错字看起来好像有人忘记了领导/。两者的结合将是很棒的- apt-get remove+删除过时的目录
Alexander

13

要从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


12

注意:这将完全从系统中删除nodejs;然后您可以通过以下命令进行全新安装。

删除Nodejs和Npm

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

现在从系统中删除.node和.npm文件夹

sudo rm -rf /usr/local/bin/npm 
sudo rm -rf /usr/local/share/man/man1/node* 
sudo rm -rf /usr/local/lib/dtrace/node.d 
sudo rm -rf ~/.npm 
sudo rm -rf ~/.node-gyp 
sudo rm -rf /opt/local/bin/node 
sudo rm -rf opt/local/include/node 
sudo rm -rf /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*

转到主目录并删除任何节点或node_modules目录(如果存在)。

您可以通过以下命令验证您的卸载,它们不应输出任何内容。

which node
which nodejs
which npm

安装NVM(节点版本管理器)脚本

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

上面的命令会将NVM存储库从Github复制到〜/ .nvm目录:

=>关闭并重新打开终端,以开始使用nvm或运行以下命令以立即使用它:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

如上面的输出所示,您应该关闭然后重新打开终端,或者运行命令以将nvm脚本的路径添加到当前Shell会话。您可以做对自己更轻松的事情。

将脚本放入PATH后,请输入以下命令验证nvm是否已正确安装:

nvm --version
# Output
0.34.0

安装Node.js和npm

nvm install node
nvm install --lts

安装完成后,通过打印Node.js版本进行验证:

node --version
#Output

v12.8.1

Npm也应该与节点一起安装,使用进行验证

npm -v
# Output
6.13.4

额外-[可选]您还可以使用nvm轻松使用两个不同版本的节点

nvm install 8.10.0#只需输入节点版本号,然后在节点版本之间切换

nvm ls

#output
->     v12.14.1
        v13.7.0
default -> lts/* (-> v12.14.1)
node -> stable (-> v13.7.0) (default)
stable -> 13.7 (-> v13.7.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.14.1)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.18.1 (-> N/A)

就我而言,同时安装了v12.14.1和v13.7.0,要切换,我只需要使用

nvm use 12.14.1

为全局安装配置npm在主目录中,为全局安装创建目录:

mkdir ~/.npm-global

配置npm以使用新的目录路径:

npm config set prefix '~/.npm-global'

如果您的首选文本编辑器不存在,请打开或创建〜/ .profile文件,然后添加以下行:

export PATH=~/.npm-global/bin:$PATH

在命令行上,更新系统变量:

source ~/.profile

就这样


谢谢@Nitin,这对您很有帮助:)
Faisal

我该如何保存答案?
BKSpurgeon

8

从Ubuntu完全卸载Node js

要从Ubuntu手动删除node js,npm和node_modules,您需要执行以下步骤。

  1. 首先,您需要以sudo的身份从命令终端运行以下命令。

sudo rm -rf / usr / local / bin / npm / usr / local / share / man / man1 / node * /usr/local/lib/dtrace/node.d〜/ .npm〜/ .node-gyp / opt /本地/ bin /节点opt / local / include / node / opt / local / lib / node_modules

  1. 借助以下命令,从/ usr / local / lib除去node或node_modules目录。

须藤rm -rf / usr / local / lib / node *

  1. 借助以下命令,从/ usr / local / include除去node或node_modules目录。

须藤rm -rf / usr / local / include / node *

  1. 借助以下命令,从/ usr / local / bin中删除任何节点文件或目录。

须藤rm -rf / usr / local / bin / node *

  1. 转到主目录并删除任何节点或node_modules目录(如果存在)。

2

我疯了从我的ubuntu 14.04中删除node和npm和nodejs,但是通过此步骤,您将其删除...

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

如果您正确卸载并且它仍然存在,请在此检查链接底部之前...

//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

更多信息
删除-官方网站
如果您是通过git仓库安装的, 请尝试清除nodejs npm和node


2

将节点版本从8.1.0更新到10.14.0时,我感到非常困扰

这对我有用

  1. 打开终端(crtl+alt+t)
  2. 输入which node,将给出类似的路径
  3. /usr/local/bin/node
  4. rm -rf node ,将删除节点
  5. node -v,没有节点版本...
  6. curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
  7. sudo apt-get install -y nodejs

注意:-如果您遇到类似以下错误-

node /usr/bin/env: node: No such file or directory

赶紧跑-

ln -s /usr/bin/nodejs /usr/bin/node

SORCE 这里

  1. node -v // 会给 v10.14.0

为我工作。


1

对于通过软件包管理器安装了node.js的用户,可以运行:

sudo apt-get purge nodejs

(可选)如果您已按照“通过程序包管理器安装Node.js进行安装”中所述通过添加官方NodeSource存储库进行了安装,请执行以下操作:

sudo rm /etc/apt/sources.list.d/nodesource.list

如果还要清理npm缓存,请执行以下操作:

rm -rf ~/.npm

尝试手动删除内容是不明智的做法,因为它可能使软件包管理器和运行系统本身混乱。


0

要从Ubuntu手动删除node js,npm和node_modules,您需要执行以下步骤。

  1. 首先,您需要以sudo的身份从命令终端运行以下命令。

sudo rm -rf / usr / local / bin / npm / usr / local / share / man / man1 / node * /usr/local/lib/dtrace/node.d〜/ .npm〜/ .node-gyp / opt /本地/ bin /节点opt / local / include / node / opt / local / lib / node_modules

  1. 借助以下命令,从/ usr / local / lib除去node或node_modules目录。

须藤rm -rf / usr / local / lib / node *

  1. 借助以下命令,从/ usr / local / include除去node或node_modules目录。

须藤rm -rf / usr / local / include / node *

  1. 借助以下命令,从/ usr / local / bin中删除任何节点文件或目录。

须藤rm -rf / usr / local / bin / node *

  1. 转到主目录并删除任何节点或node_modules目录(如果存在)。

现在完成


0
sudo apt-get install nodejs

sudo apt-get install aptitude

sudo aptitude install npm

2
您的答案和几年前接受的答案之间的主要区别是,您正在经历Aptitude。解释为什么您认为这是一种比接受的答案更好的方法会很有用。Aptitude提供了缺少早期答案的哪些内容?为什么读者应该实施您的方法?
杰里米·卡尼

-1

就我而言,我尝试卸载该节点以使用其他版本的节点,但是当我检查node -v时,它一次又一次为我提供相同版本,

找到了解决方案:-搜索您所需的软件包:

brew search node

如果未安装,则可以安装所需的版本:

brew install node@10

已经安装了节点程序包,您需要先取消链接:

brew unlink node

然后,您可以链接其他版本:

brew link node@10 

如果需要将它们与--force和--overwrite链接

brew link --force --overwrite node@10
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.