Jak usunąć nodejs z Ubuntu 16.04?

42

Kroki do replikacji:

Ubuntu 16.04 xenial (x86-64)

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm

Chcę odinstalować nodejsi npmwidziałem kilka postów, które sugerują, że jest to najczęstszy sposób:

sudo apt-get purge --auto-remove nodejs

Powoduje to jednak wyświetlenie monitu, który wydaje się odwoływać do zależności, które - gdyby zostały usunięte - brzmiałyby tak, jakby powodowały problemy.

Jaki jest najlepszy sposób na „cofnięcie” instalacji nodejsi npm?

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  gyp* libboost-python1.58.0* libjs-inherits* libjs-node-uuid*
  libjs-underscore* libssl-dev* libssl-doc* libuv1* libuv1-dev*
  linux-headers-4.4.0-18* linux-headers-4.4.0-18-generic*
  linux-headers-4.4.0-21* linux-headers-4.4.0-21-generic*
  linux-image-4.4.0-18-generic* linux-image-4.4.0-21-generic*
  linux-image-extra-4.4.0-18-generic* linux-image-extra-4.4.0-21-generic*
  linux-signed-image-4.4.0-18-generic* linux-signed-image-4.4.0-21-generic*
  node-abbrev* node-ansi* node-ansi-color-table* node-archy* node-async*
  node-block-stream* node-combined-stream* node-cookie-jar*
  node-delayed-stream* node-forever-agent* node-form-data* node-fstream*
  node-fstream-ignore* node-github-url-from-git* node-glob* node-graceful-fs*
  node-gyp* node-inherits* node-ini* node-json-stringify-safe* node-lockfile*
  node-lru-cache* node-mime* node-minimatch* node-mkdirp* node-mute-stream*
  node-node-uuid* node-nopt* node-normalize-package-data* node-npmlog*
  node-once* node-osenv* node-qs* node-read* node-read-package-json*
  node-request* node-retry* node-rimraf* node-semver* node-sha* node-sigmund*
  node-slide* node-tar* node-tunnel-agent* node-underscore* node-which*
  nodejs* nodejs-dev* npm* python-configobj* python-pycurl* python-pyexiv2*
  python-pyexiv2-doc*
0 to upgrade, 0 to newly install, 72 to remove and 0 not to upgrade.
After this operation, 631 MB disk space will be freed.
Do you want to continue? [Y/n]

Edytować:

To jest wynik z sudo apt-get purge nodejs:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  gyp libboost-python1.58.0 libjs-inherits libjs-node-uuid libjs-underscore
  libssl-dev libssl-doc libuv1 libuv1-dev linux-headers-4.4.0-18
  linux-headers-4.4.0-18-generic linux-headers-4.4.0-21
  linux-headers-4.4.0-21-generic linux-image-4.4.0-18-generic
  linux-image-4.4.0-21-generic linux-image-extra-4.4.0-18-generic
  linux-image-extra-4.4.0-21-generic linux-signed-image-4.4.0-18-generic
  linux-signed-image-4.4.0-21-generic python-configobj python-pycurl
  python-pyexiv2 python-pyexiv2-doc
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  node-abbrev* node-ansi* node-ansi-color-table* node-archy* node-async*
  node-block-stream* node-combined-stream* node-cookie-jar*
  node-delayed-stream* node-forever-agent* node-form-data* node-fstream*
  node-fstream-ignore* node-github-url-from-git* node-glob* node-graceful-fs*
  node-gyp* node-inherits* node-ini* node-json-stringify-safe* node-lockfile*
  node-lru-cache* node-mime* node-minimatch* node-mkdirp* node-mute-stream*
  node-node-uuid* node-nopt* node-normalize-package-data* node-npmlog*
  node-once* node-osenv* node-qs* node-read* node-read-package-json*
  node-request* node-retry* node-rimraf* node-semver* node-sha* node-sigmund*
  node-slide* node-tar* node-tunnel-agent* node-underscore* node-which*
  nodejs* nodejs-dev* npm*
0 to upgrade, 0 to newly install, 49 to remove and 0 not to upgrade.
After this operation, 27.6 MB disk space will be freed.
Do you want to continue? [Y/n]
użytkownik1063287
źródło
1
Prawdopodobnie wiele obcych paczek z autoremove. Co się stanie, gdy po prostu biegniesz sudo apt-get purge nodejs?
heemayl
Co powiesz na wypróbowanie stackoverflow.com/a/33947181/486919 ?
edwinksl
@ heemayl - dodali wyniki do posta i po prostu zastosowali to podejście.
user1063287

Odpowiedzi:

62

Jak wynika z wyników:

sudo apt-get purge nodejs

usuwa tylko nodepowiązane pakiety, tj. odpowiednie pakiety, nic więcej.

Z drugiej strony, kiedy to zrobisz:

sudo apt-get purge --auto-remove nodejs

to koniecznie robi:

sudo apt-get purge nodejs
sudo apt-get autoremove

i usuwania gyp, linux-headers-4.4.0-18-genericitp pakiety są rzeczywiście wywołane przez autoremoveco zostały one zainstalowane jako zależności i nie są już potrzebne przez dowolnego zainstalowanego pakietu, przypuszczalnie dlatego, że główny pakiet został usunięty.

Dlatego w tym kontekście jest całkowicie w porządku:

sudo apt-get purge --auto-remove nodejs

Jeśli jesteś zbyt paranoikiem, możesz to zrobić w dwóch krokach: po pierwsze purge nodejs:

sudo apt-get purge nodejs

a następnie usuń zależności sieroce (do tej pory, jeśli istnieją):

sudo apt-get autoremove
heemayl
źródło
8

Aby usunąć węzły js, npm i node_modules z Ubuntu, musisz usunąć również pojemniki, które znajdują się w różnych lokalizacjach w Ubuntu. Mogą to być:

/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

Zrobiłem to z powodzeniem. Dlatego dzielę się pełną procedurą

Musisz wykonać czynności opisane w http://amcositsupport.blogspot.in/2016/07/to-completely-uninstall-node-js-from.html

Amit Malik
źródło
2
Witamy w Ask Ubuntu! Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
Anwar
Było to pomocne - nawet po purgekomendach, nawet po ponownym uruchomieniu, te pliki binarne nadal pozostawały i działały tak, jakby węzeł / npm był nadal zainstalowany i tak dalej. Dopiero po usunięciu plików binarnych pełna dezinstalacja jest zakończona.
Nikhil VJ
4

sudo apt-get remove nodejs

sudo apt-get remove npm

Następnie przejdź do /etc/apt/sources.list.dlisty węzłów i usuń ją, jeśli masz. Następnie zrób

sudo apt-get update

Sprawdź folder .npm lub .node w folderze domowym i usuń je.

Jeśli wpiszesz

which node

możesz zobaczyć lokalizację węzła. Spróbuj which nodejsi which npmteż.

Polecam instalację węzła za pomocą Node Version Manager (NVM). To zaoszczędziło mi dużo bólu głowy. Ponieważ możesz zainstalować nodejs i npm bez sudo za pomocą nvm.

użytkownik779311
źródło