'Uninstalling the currently active version of node.js with nvm

On Ubuntu 16.04, I mistakenly used root to install nvm, and then to install node.js 8.8.1 via nvm. I also used nvm alias default 8.8.1, thinking it would correct my error.

Now I would like to:

  1. Remove the default alias
  2. Uninstall node 8.8.1
  3. Uninstall npm 4.8.5, which came along with node
  4. Uninstall nvm
  5. Reinstall everything correctly for the right non-sudo user

It looks like I've succeeded with the first part:

# nvm unalias default
Deleted alias default - restore it with `nvm alias "default" "8.8.1"`

But nvm refuses to uninstall node 8.8.1, because it is the only version installed:

# nvm uninstall 8.8.1                                                                                                                             
nvm: Cannot uninstall currently-active node version, v8.8.1 (inferred from 8.8.1).

I am guessing that I first need to disactivate node 8.8.1, but I see nothing in the output of nvm --help which would appear to do this.

What steps do I need to take to completely remove node.js, npm and nvm from the machine before re-installing everything correctly?



Solution 1:[1]

First type

$ nvm deactivate

Then type

$ nvm uninstall 8.8.1

Solution 2:[2]

rm -Rf ~/.nvm

This is the nuclear option in my case. just -R would ask me if I really wanted to delete every file in the nvm folder.

Solution 3:[3]

You can uninstall the nodejs by using the following command.

yum remove nodejs

However, this will not remove the nvm from your linux box. To remove that try the below command.

nvm unload

Solution 4:[4]

nvm deactivate

can temporarily deactivate the nvm'ed node. You can comment out the path in .zshrc etc, for the next session.

#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

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Tom Aranda
Solution 2
Solution 3 Arul Deepan
Solution 4 goodhyun