Как удалить nodejs из Ubuntu 16.04?

Шаги для тиражирования:

Ubuntu 16.04 xenial (x86-64)

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

Я хочу удалить nodejs а также npm и видел несколько сообщений, которые предполагают, что это самый распространенный способ:

sudo apt-get purge --auto-remove nodejs

Однако это приводит к появлению приглашения, которое, по-видимому, ссылается на зависимости, которые, если они были удалены, звучат так, как будто они вызовут проблемы.

Каков наилучший способ "отменить" установку nodejs а также 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]

Редактировать:

Это выход из 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]

3 ответа

Решение

Как видно из вывода:

sudo apt-get purge nodejs

это только удаление node связанные пакеты, т.е. соответствующие пакеты, не более того.

С другой стороны, когда вы делаете:

sudo apt-get purge --auto-remove nodejs

это обязательно делает:

sudo apt-get purge nodejs
sudo apt-get autoremove

и удаление gyp, linux-headers-4.4.0-18-generic и т. д. пакеты на самом деле запускаются autoremove поскольку они были установлены как зависимости и больше не нужны ни одному установленному пакету, предположительно потому, что основной пакет был удален.

Так что в этом контексте прекрасно работать:

sudo apt-get purge --auto-remove nodejs

Если вы слишком параноик, вы можете сделать это в два этапа: первый purge nodejs:

sudo apt-get purge nodejs

а затем удалите потерянные зависимости (до сих пор, если есть):

sudo apt-get autoremove

Чтобы удалить узлы js, npm и node_modules из Ubuntu, вам также необходимо удалить контейнеры, которые находятся в разных местах в 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

sudo apt-get remove nodejs

sudo apt-get remove npm

Затем перейдите к /etc/apt/sources.list.d и удалите любой список узлов, если у вас есть. Тогда сделай

sudo apt-get update

Проверьте наличие папок.npm или.node в вашей домашней папке и удалите их.

Если вы печатаете

which node

Вы можете увидеть расположение узла. Пытаться which nodejs а также which npm тоже.

Я бы порекомендовал установить узел с помощью Node Version Manager(NVM). Это избавило меня от головной боли. Потому что вы можете установить nodejs и npm без sudo, используя nvm.

Чтобы удалить вручную nodejs, npm а также node_modules из Ubuntu, вам нужно сделать следующие шаги:

  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/local/bin/node opt/local/include/node /opt/local/lib/node_modules      
    
  2. удалять node или node_modules каталоги от /usr/local/lib с помощью следующей команды:

    sudo rm -rf/usr/local/lib/node*                                                                                 
    
  3. удалять node или node_modules каталоги от /usr/local/include с помощью следующей команды:

    sudo rm -rf /usr/local/include/node*                                                                         
    
  4. Удалить любой node файл или каталог из /usr/local/bin с помощью следующей команды:

    sudo rm -rf /usr/local/bin/node*                                                                                
    
  5. Перейдите в свой домашний каталог и удалите все node или node_modules каталог, если существует.

Теперь это сделано.

У меня возникла эта проблема, когда я работал на машине Ubuntu 20.04 с Nodejs.

Мне пришлось запустить следующие команды, чтобы удалить nodejs и все его зависимости.

Это нужно для удаления nodejs и его зависимостей:

sudo apt-get purge nodejs

Это сделано для удаления любых зависимостей, которые остались после удаления nodejs.

sudo apt-get autoremove

Это необходимо для удаления репозитория nodejs из /etc/apt/sources.list.d каталог:

sudo rm -rf /etc/apt/sources.list.d/nodesource.list*

Обновите список репозитория пакетов:

sudo apt-get update

Убедитесь, что исполняемый файл узла все еще доступен на вашем компьютере:

which node

Это все.

надеюсь, это поможет

Другие вопросы по тегам