it-swarm.com.ru

Как полностью удалить Node.js и переустановить с самого начала (Mac OS X)

Моя версия узла всегда v0.6.1-pre, даже после того, как я установил brew node и NVM установил v0.6.19.

Моя версия узла:

node -v
v0.6.1-pre

NVM говорит следующее (после того, как я впервые установил версию узла в одном терминале bash):

nvm ls
v0.6.19
current:    v0.6.19

Но когда я перезапускаю bash, вот что я вижу:

nvm ls
v0.6.19
current:    v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)

Так где же этот фантомный узел версии 0.6.1-pre и как от него избавиться? Я пытаюсь установить библиотеки через NPM, чтобы я мог работать над проектом.

Я пытался использовать BREW для обновления до NVM, используя «brew update» и «brew install node». Я попытался удалить каталог "node" в моем/usr/local/include и "node" и "node_modules" в моем "/usr/local/lib". Я попытался удалить npm и переустановите его, следуя этим инструкциям.

Все это потому, что я пытался обновить старую версию узла, чтобы установить библиотеку "zipstream". Теперь в моем каталоге пользователей есть папки, и версия узла STILL не обновлена, хотя NVM говорит, что она использует 0.6.19.

В идеале я хотел бы удалить nodejs, npm и nvm и просто переустановить все это с нуля в моей системе.

1006
Dominic Tancredi

Очевидно, была папка /Users/myusername/local, которая содержала include с node и lib с node и node_modules. Как и почему это было создано вместо того, чтобы в моей папке /usr/local, я не знаю.

Удаление этих локальных ссылок исправило фантом v0.6.1-pre. Если у кого-то есть объяснение, я выберу это как правильный ответ.

Правка:

Возможно, вам также потребуется выполнить дополнительные инструкции:

Sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}

что эквивалентно (так же, как и выше) ...

Sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node* /usr/local/lib/dtrace/node.d ~/.npm ~/.node-gyp 

или (так же, как и выше) сломан ...

Чтобы полностью удалить узел + npm, нужно сделать следующее:

  1. перейдите в / usr/local/lib и удалите все node и node_modules
  2. перейдите в / usr/local/include и удалите любые каталоги node и node_modules 
  3. если вы установили с помощью brew install node, запустите brew uninstall node в своем терминале
  4. проверьте домашний каталог на наличие любых папок local или lib или include и удалите оттуда любые node или node_modules
  5. перейдите в / usr/local/bin и удалите любой исполняемый файл node

Вам также может понадобиться:

Sudo rm -rf /opt/local/bin/node /opt/local/include/node /opt/local/lib/node_modules
Sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node.1 /usr/local/lib/dtrace/node.d

Кроме того, NVM изменяет переменную PATH в $HOME/.bashrc, которая должна быть возвращена вручную .

Затем загрузите nvm и следуйте инструкциям по установке узла. Я полагаю, что последние версии узла поставляются с npm, но вы также можете переустановить его.

1445
Dominic Tancredi

Для пользователей Brew OSX:

Удалять:

brew uninstall node; 
# or `brew uninstall --force node` which removes all versions
brew cleanup;
rm -f /usr/local/bin/npm /usr/local/lib/dtrace/node.d;
rm -rf ~/.npm;

Установить: 

brew install node;
which node # => /usr/local/bin/node
export NODE_PATH='/usr/local/lib/node_modules' # <--- add this ~/.bashrc

Вы можете запустить brew info node для получения более подробной информации об установке вашего узла.


рассмотреть возможность использования NVM вместо варки

NVM (менеджер версий узлов) - это портативное решение для управления несколькими версиями узлов

https://github.com/creationix/nvm

> nvm uninstall v4.1.0
> nvm install v8.1.2
> nvm use v8.1.2
> nvm list
         v4.2.0
         v5.8.0
        v6.11.0
->       v8.1.2
         system
371
lfender6445

Я знаю, что это сообщение немного устарело, но я просто хотел поделиться командами, которые работали для меня в Терминале при удалении Node.js.

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read f; do  Sudo rm /usr/local/${f}; done

Sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

ОБНОВЛЕНИЕ: 23 SEP 2016


Если вы боитесь запускать эти команды ...

Благодаря jguix для this quick tutorial .

Сначала создайте промежуточный файл:

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom >> ~/filelist.txt

Просмотрите файл вручную (находится в папке Home)

 ~/filelist.txt

Затем удалите файлы:

cat ~/filelist.txt | while read f; do Sudo rm /usr/local/${f}; done

Sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

Для 10.10.5 и выше

Спасибо Lenar Hoyt

Gist Comment Источник:gistcomment-1572198

Original Gist:TonyMtz/d75101d9bdf764c890ef

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom | while read f; do Sudo rm /usr/local/${f}; done

Sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
176
DaveyJake

На Mavericks я устанавливаю его с узла pkg (с сайта nodejs) и удаляю его, чтобы переустановить с помощью brew. Я запускаю только 4 команды в терминале:

  1. Sudo rm -rf /usr/local/lib/node_modules/npm/
  2. brew uninstall node
  3. brew doctor
  4. brew Prune

Если установка узла все еще продолжается, повторите шаг 2. После того, как все в порядке, я устанавливаю, используя brew install node

100
Pedro Polonia
  1. Первый:

    lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read f; do  Sudo rm /usr/local/${f}; done
    
    Sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
    
  2. Напомним, что лучший способ (я обнаружил) полностью удалить узел + npm - это сделать следующее:

    перейти к /usr/local/lib и удалить любой узел и node_modules

    cd /usr/local/lib
    
    Sudo rm -rf node*
    
  3. перейдите в /usr/local/include и удалите все каталоги node и node_modules

    cd /usr/local/include
    
    Sudo rm -rf node*
    
  4. если вы установили с brew install node, то запустите brew uninstall node в своем терминале

    brew uninstall node
    
  5. проверьте домашний каталог на наличие папок «local», «lib» или «include» и удалите оттуда любые «node» или «node_modules».

    перейдите в/usr/local/bin и удалите любой исполняемый файл узла

    cd /usr/local/bin
    
    Sudo rm -rf /usr/local/bin/npm
    
    ls -las
    
  6. Возможно, вам также потребуется выполнить дополнительные инструкции:

    Sudo rm -rf /usr/local/share/man/man1/node.1
    
    Sudo rm -rf /usr/local/lib/dtrace/node.d
    
    Sudo rm -rf ~/.npm
    

Источник: tonyMtz

31
Johel Alvarez

понизить уровень до 0.10.36

  Sudo npm cache clean -f
  Sudo npm install -g n
  Sudo n 0.10.36

обновить узел до стабильного v

  Sudo npm cache clean -f
  Sudo npm install -g n
  Sudo n stable
21
miukki

Я не уверен, что это потому, что у меня была старая версия (4.4.5), или потому, что я использовал официальный установщик, но большинство файлов, на которые есть ссылки в других ответах, не существовало в моей системе. Мне осталось только удалить следующее:

~/.node-gyp
~/.node_repl_history
/usr/local/bin/node
/usr/local/bin/npm
/usr/local/include/node
/usr/local/lib/dtrace/node.d
/usr/local/lib/node_modules
/usr/local/share/doc/node
/usr/local/share/man/man1/node.1
/usr/local/share/systemtap/tapset/node.stp

Я решил оставить ~/.npm, потому что планировал переустановить Node с Homebrew.

19
David Kennedy

В дополнение к основному ответу мне нужно было удалить все экземпляры npm, найденные в:

rm -rf /usr/local/share/man/man1/npm*
6
Carlos Pérez Priego

Я столкнулся с проблемой при удалении Node.js на моем Mac. У меня было какое-то странное поведение, такое как npm, все еще их даже после удаления со всем этим.

Это потому, что у меня была старая установка с помощью macport. Так что вы также должны удалить его, используя порт:

Sudo port uninstall nodejs

Может потребоваться установить много разных версий Node.js, поэтому удалите их все (одну за другой).

6
toutpt

Расширяя потрясающий ответ Доминика Танкреди , я свернул это в пакет bash и автономный скрипт. Если вы уже используете «Back Package Manager» с именем bpkg , вы можете установить скрипт, выполнив:

bpkg install -g brock/node-reinstall

Или вы можете посмотреть на скрипт на Github в brock/node-reinstall . Сценарий позволяет вам переустановить узел, используя nvm или nave, и указать версию узла в качестве значения по умолчанию.

6
brock

Работал на меня.

$node --version

v11.1.0

$nvm deactivate

$nvm uninstall v11.1.0
6
Inês Gomes

может быть, вам нужно сделать

hash -r 

это помогает в проблеме символической ссылки

$ node -v
$ bash: /opt/local/bin/node: No such file or directory
5
swipe

Вы можете клонировать https://github.com/brock/node-reinstall и запустить простую команду, указанную в репозитории. После этого просто перезапустите вашу систему.
Это самый простой метод, который также работал для меня.

4
oxy_js

Я установил Node.js из исходного кода, загруженного из репозитория git. Я установил с:

./configure
$ make
$ Sudo make install

Поскольку файл make поддерживает это, я могу сделать:

$ Sudo make uninstall
4
Dave Kuhlman
  • Удалить узел и/или node_modules из/USR/местные/Библиотека

          ex code:
          cd /usr/local/lib
          Sudo rm -rf node
          Sudo rm -rf node_modules
    
  • Удалить узел и/или node_modules из/USR/местные/включить

  • Удалить узел, узел-отладку и узел-gyp из/usr/local/bin
  • Удалите .npmrc из вашего домашнего каталога (это ваши настройки npm, не удаляйте это, если вы планируете переустановить Node прямо сейчас)
  • Удалить .npm из вашего домашнего каталога
  • Удалите .node-gyp из вашего домашнего каталога
  • Удалите .node_repl_history из вашего домашнего каталога
  • Удалить узел * из/USR/местные/доли/человек/man1 /
  • Удалить НПМ * из/USR/местные/доли/человек/man1 /
  • Удалить node.d из/USR/местные/Библиотека/DTrace /
  • Удалить узел из/USR/местные/Opt/местные/бен /
  • Удалить узел из/USR/местные/Opt/местные/включить /
  • Удалить node_modules из/USR/местные/Opt/местные/Библиотека /
  • Удалить узел из/USR/местные/доли/DOC /
  • Удалить node.stp из/USR/местные/доли/Systemtap/tapset /
2
Rajiv Singh

Лучше всего скачать установочный пакет: .pkg на Mac. Предпочитаю последнюю стабильную версию.

Вот ссылка: Node.js

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

2
vkrishna17

После

brew uninstall node

Я должен был знать, какой узел

which node

затем удали это

rm -rf /usr/local/bin/node
1
Hos Mercury

Это исправило это для меня Исправление npm в Mac OS X для пользователей Homebrew . И это не требует слишком много шагов.

Просто перейдите к части решения, если вам все равно, почему.

Вот соответствующая часть для удобства:

Решение

Это решение исправляет ошибку, вызванную попыткой запустить npm update npm -g. Когда вы закончите, вам также не нужно будет использовать Sudo для глобальной установки модулей npm.

Перед началом работы запишите все глобально установленные пакеты npm. Эти инструкции позволят вам удалить все эти пакеты. После того, как вы закончите, вам нужно переустановить их.

Выполните следующие команды, чтобы удалить все существующие глобальные модули npm, удалить узел и npm, переустановить узел с правильными значениями по умолчанию, настроить местоположение для устанавливаемых глобальных модулей npm, а затем установить npm в качестве собственного пакета.

rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

Узел и npm должны быть правильно установлены в этой точке. Последний шаг - добавить ~/.npm-packages/bin к вашей PATH, чтобы можно было использовать пакеты npm и global npm. Для этого добавьте следующую строку в свой ~/.bash_profile:

export PATH="$HOME/.npm-packages/bin:$PATH"

Теперь вы можете без проблем переустановить любой глобальный пакет npm, который вам нужен.

1
pcatre

Прежде всего, вам нужно деактивировать узел: (mac) после установки новой версии узла.

nvm deactivate

Это удалено /Users/user_name/.nvm/*/bin из $ PATH

И после этого узел был обновлен

node --version
v10.9.0
0
Alexandr

Если вы уже установили nvm , выполните следующие команды

  • nvm deactivate - это удалит /.nvm/*/bin из $ PATH
  • nvm list - перечислить все версии узлов, установленных в системе
  • В nvm uninstall <version> вы можете указать все версии, которые хотите удалить.

Это всегда хорошо, что вы устанавливаете узел, используя nvm, и удаляете, используя nvm, а не brew.

Это решение сработало для меня.

Дополнительные команды

  • which node знать путь узла, установленного в вашей системе. Вы можете использовать этот каталог для удаления узла вручную. Тогда вам может понадобиться настроить файл PATH соответствующим образом.
0
Pc_

Если вы не можете найти узел, просто запустите whereis node и whereis npm и whereis nvm, и вы можете удалить перечисленные каталоги по мере необходимости.

Вам также нужно будет полностью закрыть свой терминал и снова открыть его, чтобы изменения вступили в силу.

0
andromeda