GNU/Linux >> Belajar Linux >  >> Linux

pembaruan npm merusak npm

Bagi mereka yang menggunakan google untuk menemukan ini, Anda mungkin tergoda untuk menginstal melalui curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - lalu instal dengan sudo apt install nodejs .

Namun, entah bagaimana saya mengalami masalah ini. Harap diingat bahwa [email protected] menjatuhkan dukungan untuk [email protected]<=4, dan itu merupakan faktor yang berkontribusi di sini. Jika Anda ingin memastikan bahwa semuanya terinstal pada versi terbaru dan benar, saya sangat menyarankan untuk menginstal melalui nvm .

Melalui petunjuk nvm di GitHub mereka:Anda dapat menambahkan skrip pemasangan dengan

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

Kemudian Anda dapat mulai menggunakan nvm. Anda mungkin harus memulai ulang terminal Anda, jadi setelah penginstalan, keluar dari terminal, mulai lagi, dan periksa apakah nvm telah diinstal dengan nvm --version .

Jika semuanya berjalan dengan baik, Anda dapat menginstal versi node tertentu dengan npm di belakangnya. Versi stabil terbaru dari node saat penulisan ini adalah 10.15.3, jadi

 nvm install 10.15.3

Dan tentu saja, jika Anda memerlukan bantuan, nvm --help memiliki daftar opsi.


Anda mungkin telah menginstal npm dua kali, salah satunya di /usr/local/bin dan yang lainnya di /usr/bin .

Pertama, Anda dapat mencoba menghapus npm modul yang telah diinstal dengan memutakhirkan npm . Coba jalankan ini:

  • rm -r /usr/local/lib/node_modules/npm
  • /usr/bin/npm uninstall npm

Setelah Anda menjalankan versi npm, instal versi node yang lebih baru sebelum memutakhirkan npm. Kemudian, hapus versi distribusi linux Anda.

Jika solusi pertama tidak berhasil, pendekatan lain adalah menginstal versi node terbaru (tentu saja tanpa menggunakan npm) :

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

(solusi untuk centos....Saya berasumsi ini juga akan berfungsi di ubuntu):

untuk membersihkan sepenuhnya mesin centos saya, saya juga telah melakukan hal berikut - pengguna saya adalah "centos" dan rumah saya adalah /home/centos:

sudo rm -rf /usr/local/bin/npm 
sudo rm -rf /usr/local/bin/npx
sudo rm -rf /usr/lib/node_modules/
sudo rm -rf /usr/bin/npm
sudo rm -r /usr/local/lib/node_modules/
sudo rm -rf /usr/local/bin/node
sudo rm -rf /usr/bin/npm
sudo rm -rf /usr/lib/node_modules/
rm -rf /home/centos/.npm/
rm -rf /home/centos/node*
rm -rf /home/centos/.node-gyp/
sudo rm -rf /root/.npm/
sudo rm /usr/bin/node
sudo rm -rf /usr/local/include/node

hanya pada titik ini saya menginstal ulang lagi:

wget http://nodejs.org/dist/latest/node-v11.4.0-linux-x64.tar.gz
sudo tar --strip-components 1 -xzvf node-v* -C /usr/local

dan semuanya berfungsi kembali:

node --version
v11.4.0
npm --version
6.4.1

Jika Anda menggunakan nvm untuk menginstal npm dan node, coba solusi ini.

  1. Kenali di mana tepatnya node yang saat ini digunakan dan npm diinstal:

    which node

    Dalam kasus saya, itu adalah /home/ubuntu/.nvm/versions/node/

  2. Sekarang, hapus semua versi node menggunakan:

    sudo rm -rf /home/ubuntu/.nvm/versions/node/

  3. Anda sekarang dapat menggunakan nvm untuk menginstal versi node dan npm yang diperlukan.

    nvm install 4.9.1


Linux
  1. Perbarui Ubuntu 14.04 Ke 15.04?

  2. Ubuntu Tidak Bisa Boot Setelah Pembaruan Kernel?

  3. Perbarui Ubuntu 16.04.1 Ke 16.04.3?

  1. Perbarui OpenSSL di Ubuntu

  2. Instalasi/pembaruan komposer tidak berfungsi

  3. tidak dapat menginstal node-sass oleh karena itu tidak dapat menginstal gulp-sass

  1. Instal Qt di Ubuntu

  2. Ubuntu buat-reaksi-aplikasi gagal dengan izin ditolak

  3. sudo bagus atau sudo bagus?