Как удалить 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, вам нужно сделать следующие шаги:
Прежде всего вам нужно запустить следующую команду из терминала как
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
удалять
node
илиnode_modules
каталоги от/usr/local/lib
с помощью следующей команды:sudo rm -rf/usr/local/lib/node*
удалять
node
илиnode_modules
каталоги от/usr/local/include
с помощью следующей команды:sudo rm -rf /usr/local/include/node*
Удалить любой
node
файл или каталог из/usr/local/bin
с помощью следующей команды:sudo rm -rf /usr/local/bin/node*
Перейдите в свой домашний каталог и удалите все
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
Это все.
надеюсь, это поможет