javascript npm - Comment désinstaller complètement Node.js et réinstaller depuis le début(Mac OS X)




exemple application (13)

J'ai été frappé par un problème lors de la désinstallation de Node.js sur mon mac. J'ai eu un comportement étrange comme npm est toujours leur même après l'avoir enlevé avec tout cela.

C'était parce que j'avais une ancienne installation avec macport. Donc, vous devez également le désinstaller en utilisant le port:

sudo port uninstall nodejs

Il peut avoir installé plusieurs versions différentes de Node.js afin de les désinstaller toutes (une par une).

Ma version du noeud est toujours v0.6.1-pre même après avoir installé le noeud d'infusion et l'installation NVM v0.6.19.

Ma version de noeud est:

node -v
v0.6.1-pre

NVM dit ceci (après avoir installé une version de node pour la première fois dans un terminal bash):

nvm ls
v0.6.19
current:    v0.6.19

Mais quand je redémarre bash, c'est ce que je vois:

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

Alors, où est ce noeud fantôme 0.6.1-pré version et comment puis-je m'en débarrasser? J'essaie d'installer des bibliothèques via NPM pour pouvoir travailler sur un projet.

J'ai essayé d'utiliser BREW pour mettre à jour avant NVM, en utilisant "infusion de mise à jour" et "infuser le noeud d'installation". J'ai essayé de supprimer le répertoire "node" dans mon / usr / local / include et le "node" et "node_modules" dans mon "/ usr / local / lib". J'ai essayé de désinstaller npm et de le réinstaller en suivant these instructions.

Tout cela parce que j'essayais de mettre à jour une ancienne version du noeud pour installer la bibliothèque "zipstream". Maintenant, il y a des dossiers dans mon répertoire d'utilisateurs, et la version du nœud STILL n'est pas à jour, même si la NVM dit qu'elle utilise 0.6.19.

Idéalement, je voudrais désinstaller nodejs, npm, et nvm, et juste réinstaller le tout à partir de rien sur mon système.


En plus de la réponse principale, j'ai dû supprimer toutes les instances de npm trouvées dans:

rm -rf /usr/local/share/man/man1/npm*

Cela l'a corrigé pour moi Fixation npm sur Mac OS X pour les utilisateurs Homebrew . Et cela ne nécessite pas trop d'étapes.

Il suffit d'aller à la partie solution si vous ne vous souciez pas du pourquoi.

Voici la partie pertinente pour plus de commodité:

Solution

Cette solution corrige l'erreur causée par l'exécution de npm update npm -g . Une fois que vous avez terminé, vous n'aurez plus besoin d'utiliser sudo pour installer les modules npm globalement.

Avant de commencer, notez les packages npm installés dans le monde entier. Ces instructions vous feront supprimer tous ces paquets. Lorsque vous avez terminé, vous devrez les réinstaller.

Exécutez les commandes suivantes pour supprimer tous les modules npm globaux existants, désinstallez node & npm, réinstallez le nœud avec les valeurs par défaut correctes, configurez l'emplacement des modules npm globaux à installer, puis installez npm comme propre pacakge.

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

Le noeud et le npm doivent être correctement installés à ce stade. La dernière étape consiste à ajouter ~/.npm-packages/bin à votre PATH pour que npm et les paquets npm globaux soient utilisables. Pour ce faire, ajoutez la ligne suivante à votre ~/.bash_profile :

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

Vous pouvez maintenant réinstaller tous les paquets npm globaux dont vous avez besoin sans aucun problème.


peut-être que vous devez faire

hash -r 

ça aide avec le problème de lien symbolique

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

Je sais que ce post est un peu daté, mais je voulais juste partager les commandes qui ont fonctionné pour moi dans le Terminal lors de la suppression de 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.*

MISE À JOUR: 23 SEP 2016

Si vous avez peur d'exécuter ces commandes ...

Merci à jguix pour this quick tutorial .

D'abord, créez un fichier intermédiaire:

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

Passez en revue manuellement votre fichier (situé dans votre dossier de départ)

 ~/filelist.txt

Puis supprimez les fichiers:

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.*

Pour 10.10.5 et plus

Merci Lenar Hoyt

Gist Commentaire Source: 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.*

Pour les utilisateurs d'infusion, OSX :

Retirer:

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

À installer:

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

Vous pouvez exécuter le brew info node pour plus de détails concernant les installations de vos nœuds.

envisager d'utiliser NVM au lieu de brasser

NVM (node ​​version manager) est une solution portable pour gérer plusieurs versions de noeud

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
  • vous pouvez l'utiliser avec AVN pour changer automatiquement de version lorsque vous sautez entre différents projets avec des dépendances de nœuds différentes.

déclasser le noeud à 0,10.36

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

mettre à niveau le noeud vers stable v

  sudo npm cache clean -f
  sudo npm install -g n
  sudo n stable

  1. Premier:

    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. Pour récapituler, le meilleur moyen (j'ai trouvé) pour désinstaller complètement node + npm est de faire ce qui suit:

    allez dans /usr/local/lib et supprimez tout noeud et node_modules

    cd /usr/local/lib
    
    sudo rm -rf node*
    
  3. allez dans /usr/local/include et supprimez tout répertoire node et node_modules

    cd /usr/local/include
    
    sudo rm -rf node*
    
  4. Si vous avez installé le brew install node , exécutez le brew uninstall node dans votre terminal.

    brew uninstall node
    
  5. vérifiez votre répertoire Home pour les dossiers "local" ou "lib" ou "include", et supprimez tout "node" ou "node_modules" à partir de là

    allez dans / usr / local / bin et supprimez tout fichier exécutable

    cd /usr/local/bin
    
    sudo rm -rf /usr/local/bin/npm
    
    ls -las
    
  6. Vous devrez peut-être également faire les instructions supplémentaires:

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

Source: tonyMtz


En développant la réponse géniale de Dominic Tancredi , j'ai transformé ceci en un paquet bash et un script autonome. Si vous utilisez déjà "Back Package Manager" appelé bpkg, vous pouvez installer le script en exécutant:

bpkg install -g brock/node-reinstall

Ou vous pouvez jeter un oeil au script sur Github à brock/node-reinstall . Le script vous permet de réinstaller le noeud à l'aide de nvm ou nave et de spécifier une version de noeud par défaut.


Vous pouvez cloner https://github.com/brock/node-reinstall et lancer la commande simple comme indiqué dans le dépôt. Après cela, redémarrez votre système.
C'est la méthode la plus simple et a également travaillé pour moi.


(serveur: ubuntu 14)

1.) installer nvm (gestionnaire de version de noeud) https://github.com/creationix/nvm

2.) nœud d'installation nvm

3.) npm -v (se renseigner sur la version npm => 3.8.6)

4.) node -v (interrogez la version de noeud => v6.0.0)


Apparemment, il y avait un /Users/myusername/local qui contenait un include avec node et lib avec node et node_modules . Comment et pourquoi cela a été créé au lieu de dans mon dossier /usr/local , je ne sais pas.

La suppression de ces références locales a corrigé le fantôme v0.6.1-pre. Si quelqu'un a une explication, je choisirai cela comme réponse correcte.

MODIFIER:

Vous devrez peut-être également faire les instructions supplémentaires:

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

qui est l'équivalent de (même que ci-dessus) ...

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

ou (même que ci-dessus) en panne ...

Pour désinstaller complètement node + npm, procédez comme suit:

  1. allez dans / usr / local / lib et supprimez tout noeud et node_modules
  2. allez dans / usr / local / include et supprimez tout répertoire node et node_modules
  3. Si vous avez installé le noeud d'installation de brassage , exécutez le noeud de désinstallation de l'infusion dans votre terminal.
  4. vérifiez votre répertoire d'accueil pour tous les dossiers locaux ou lib ou include , et supprimez tout noeud ou node_modules à partir de là
  5. allez dans / usr / local / bin et supprimez tout fichier exécutable

Vous devrez peut-être aussi faire:

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

De plus, NVM modifie la variable PATH dans $HOME/.bashrc , qui doit être restaurée manuellement .

Ensuite, téléchargez nvm et suivez les instructions pour installer le noeud. Les dernières versions de node viennent avec npm , je crois, mais vous pouvez aussi réinstaller ça aussi.


Tutoriels

Sites de développeurs

Vidéos

Screencasts

Livres

Cours

Blogs

Podcasts

Ressources JavaScript

Node.js Modules

Autre





javascript node.js npm