Npm не может быть успешно установлен при установке nodejs

Я новичок в использовании nodejs. Я установил Node.js с помощью этой команды

sudo apt-get install -y nodejs

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

введите описание изображения здесь

Как я могу это исправить?

4 ответа

У меня такая же проблема в Mint 20, которую NodeJS установил из Mint Software Manager без npm, и я решил ее, установив npm с помощью командной строки.

      sudo apt install npm

а теперь у меня работает нормально

  1. Удалите устаревший NodeJS, позвонив sudo apt-get remove --purge nodejs -y потому что это кажется устаревшим
  2. Следуйте инструкциям на странице NodeJS здесь

NodeJS из репозиториев Linux в основном устарели. Самая новая версия v8.x

У меня была такая же проблема с npm на Linux Mint 20:

$ npm -v
Segmentation fault (core dumped)

И мне удалось решить эту проблему, сначала удалив текущий nodejs/npm:

sudo apt-get remove --purge nodejs npm -y

А затем следуйте официальным инструкциям по установке для Ubuntu и Node.js Current (v14.x) или любой другой версии, которая вам нравится:

curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs

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

sudo apt autoremove

Кажется (для некоторых), что есть ошибка в последней версии программного обеспечения Ubuntu Nodejs, которая вызывает ошибку сегментации, которая у вас есть

Лучший способ установить его - получить узел из исходного кода и скомпилировать его.

#!/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" 

Убедитесь, что вы используете sudo chmod a+x /path/to/file/install_nodejs_latest.sh, чтобы убедиться, что он запустится. Затем используйте sudo sh /path/to/file/install_nodejs_latest.sh, чтобы запустить его. (Должно быть, я запустил sudo, чтобы все команды работали правильно)

Скрипт удаляет старые nodejs, npm и все модули узлов.

Это обновит npm в конце скрипта.

Время от времени рекомендуется делать sudo npm install -g npm (если вы хотите последнее), потому что npm обновляется быстрее, чем узел js

после завершения сценария запустите npm -v и node -v. Если версии всплывают, запустите sudo npm install -g phonegap, sudo npm install -g cordova, sudo npm install -g less, если вы хотите обновить какой-либо из модулей в будущем все, что вам нужно сделать, это установить его снова, и это заменит предыдущее. ExpressJS предназначен для приложений по базам приложений, поэтому не рекомендуется устанавливать его глобально

я получил ответ из источника ниже: ссылка

Другие вопросы по тегам