npm -v return falha de segmentação

npm -v return falha de segmentação

nodejs, npm funciona bem antes. QuandoEu tento atualizá-lo

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

E digite npm -v, jogue "Segmentation fault". Eu reinicio o sistema e digito o mesmo comando novamente, novamente ele mostra o mesmo erro. Então eu removo o pacote nodejs e npm deUbuntu 14.04atravésCentro de Software Ubuntue reinstale-o novamente.

Então eu tento instalar olacuna telefônicaatravés do pacote npm usando um comando

sudo npm install -g phonegap

Mas não retorna nenhum progresso. Então eu verifico a versão do npm, gera um erro "Falha de segmentação". Eu também tento sudo npm -v. Não retorna nada.

Então decido remover o npm do Ubuntu 14.04 usando o comando

sudo apt-get remove npm 

Então eu digito sudo npm install -g phonegapque não é possível lançar o pacote npm não está disponível.

Nodejs

Minha pergunta é:

  1. O pacote não está lá, então por que eu digito npm -v, ele retorna "Segmenatation Fault"
  2. Se o pacote não for removido, quando eu digitar sudo npm install -g phonegap, por que não é possível instalar o phonegap.

Ajude-me a resolver esse problema. Ou forneça uma maneira de desinstalar nodejs, npm, phonegap, expressjs, de maneira menos limpa e reinstalá-lo.

Editar:

Intervalo telefônico

Editar1:

De acordo com a resposta @ chj1axr0, o script gera um erro após a instalação do nodejs

insira a descrição da imagem aqui

Responder1

Eu pesquisei no Google e parece (para alguns) que há um bug na versão mais recente do software Ubuntu do Nodejs que causa a falha de segmentação que você está tendo

A melhor maneira de instalá-lo é obtendo o nó da fonte e compilando-o.

Eu configurei um script simples emuma essência do Githubisso cuidará disso.

#!/bin/sh
# Update System
echo "System Update"
apt-get -y update
echo "Update completed"
# Installing the applications needed to build Nodejs
apt-get -y install libssl-dev git-core pkg-config build-essential curl gcc g++ checkinstall
# Download & Unpack Node.js - v7.3.0
echo "Download Node.js - v7.3.0"
mkdir /tmp/node-install
cd /tmp/node-install
wget https://nodejs.org/dist/latest/node-v7.3.0.tar.gz
tar -zxf node-v7.3.0.tar.gz
echo "Node.js download & unpack completed"
# Install Node.js
echo "Compiling and installing Node.js"
cd node-v7.3.0
./configure && make && checkinstall --install=yes --pkgname=nodejs --pkgversion "7.3.0" --default
echo "Node.js install completed! Deleting The /tmp files"
rm -rf /tmp/node-install
echo "If you have made it this far in the script with no errors popping up all is well have a good day" 

Certifique-se e use sudo chmod a+x /path/to/file/install_nodejs_latest.shpara ter certeza de que iniciará. Em seguida, use sudo sh /path/to/file/install_nodejs_latest.shpara iniciá-lo. (Devo rodar com sudo para que todos os comandos sejam disparados corretamente)

O script remove os antigos nodejs, npm e todos os módulos do nó.

Ele atualizará o npm no final do script.

De vez em quando, é recomendável fazer isso sudo npm install -g npm(se você quiser o mais recente), porque o npm atualiza mais rápido do que o node js

depois que o script for concluído, execute npm -ve node -vse as versões aparecerem, execute sudo npm install -g phonegap, sudo npm install -g cordovatambém sudo npm install -g lessse você quiser atualizar algum dos módulos no futuro, tudo o que você precisa fazer é instalá-lo novamente e isso substituirá o anterior.expressjsé para um aplicativo baseado em aplicativos, portanto não é recomendado instalá-lo globalmente

Responder2

  1. Tente remover com apt-get remove --purge. Talvez alguns arquivos tenham sido deixados por aí.

  2. verifique a saída de which npm.

  3. Como você instalou o nodejs? Eu acho que a versão upstream empacota o npm junto com o node, enquanto eles estão separados no Ubuntu. Se você instalou o npm upstream, remover o npm com o apt apenas mudou para o npm upstream. Se o problema for com pacotes corrompidos que o nó/npm carrega na inicialização, a troca não resolverá o problema. Talvez removendo todas as coisas do node/npm do seu sistema e começando do zero. Quem sabe. É um nó.

Responder3

Eu tenho o mesmo problema e resolvi. (meu sistema operacional é Ubuntu 19.4)

a razão pela qual esse problema acontece é que você instalou o nodejs e o npm separadamente.

então, primeiro, você deve remover nodejs e npm.

sudo apt --auto-remove purge npm
sudo apt --auto-remove purge nodejs

e então instale apenas nodejs

sudo apt-get install nodejs

Por fim, siga os comandos para verificar nodejs e npm

node -v
npm -v

Nota: Porque nodejs e npm são empacotados juntos. você não precisa instalar o npm separadamente.

informação relacionada