วิธีลบ nodejs จาก Ubuntu 16.04


42

ขั้นตอนในการทำซ้ำ:

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]

1
autoremoveแพคเกจภายนอกอาจจะมาจากหลาย ๆ จะเกิดอะไรขึ้นเมื่อคุณเรียกใช้เพียงsudo apt-get purge nodejs?
heemayl

ลองใช้stackoverflow.com/a/33947181/486919 ได้อย่างไร
edwinksl

@ heemayl - เพิ่มผลลัพธ์ไปยังโพสต์และเพิ่งไปข้างหน้าด้วยวิธีการนั้น
user1063287

คำตอบ:


62

เท่าที่เห็นจากการส่งออกของ:

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

8

ในการลบโหนด 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


2
ยินดีต้อนรับสู่ถาม Ubuntu! ในขณะที่สิ่งนี้อาจตอบคำถามในทางทฤษฎีมันก็ควรที่จะรวมส่วนสำคัญของคำตอบที่นี่และให้ลิงค์สำหรับการอ้างอิง
Anwar

สิ่งนี้มีประโยชน์ - แม้หลังจากpurgeคำสั่งแม้ว่าจะรีสตาร์ทไบนารีเหล่านี้ยังคงค้างอยู่และทำหน้าที่เหมือนโหนด / npm ยังคงติดตั้งอยู่และทั้งหมด หลังจากลบไบนารีเท่านั้นจะเป็นการถอนการติดตั้งแบบสมบูรณ์
Nikhil VJ

4

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.