saya benar-benar mencoba untuk menginstal nodejs bersama dengan npm di ubuntu 17.04 saya. saya mengunduh versi linux dari nodejs.org dan membuat tautan lunak untuk node dan nodejs. setelah memeriksa versi nodejs itu menunjukkan versi yang saya instal dan saya baik-baik saja dengan itu.
sekarang saya mencoba melakukan hal yang sama untuk npm. saya mencoba membuat tautan lunak untuk npm.
sudo ln -sf /mnt/7A46BE1454633621/softwares/programming/frontend/nodejs/lib/node_modules/npm/bin/npm
/usr/bin/npm
saya tidak tahu tautan yang saya buat benar atau tidak. tetapi saat menjalankan npm -v
perintah saya melihat versi 5.0.3 yang saya coba instal. versi ditampilkan tetapi tepat di bawahnya saya melihat sesuatu seperti ini.
5.0.3
npm update check failed │
│ Try running with sudo or get access │
│ to the local update config store via │
│ sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config
software-installation
17.04
npm
sagar limbu
sumber
sumber
sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config
seperti yang disarankan?Jawaban:
Versi npm saya adalah 5.0.3 dan saya memiliki masalah yang sama ketika saya menggunakan perintah npm:
Perintah ini berfungsi dengan baik tetapi kode ini terus muncul tanpa alasan yang jelas. Saya telah memperbarui 5.0.3 ke 5.2.0 dengan perintah ini:
npm install -g npm
ataunpm i -g npm
.Sekarang npm bekerja dengan baik.
sumber
npm
sebagai root dengansudo npm i -g npm
. Diperbarui npm hingga 6.0.1Persis masalah yang sama bagi saya, tetapi tampaknya tidak terkait dengan versi (saya menggunakan npm 5.5.1). Memperbaiki hak untuk
~/.config
membuat trik untuk saya:Saya kira ini terkait dengan beberapa masalah pemilik
~/.config/configstore/update-notifier-npm.json
.sumber
Saya telah mengubah pemilik
dan
ke $ USER: $ USER.
Dugaan saya adalah menjalankan
npm
dengan sudo membuat file itu. Setidaknya pada sistem saya kami menemukan ini:Jadi jika
sudo npm
dikodekan untuk membuatnya~/configstore/update-notifier-npm.json
akan melakukannya dengan direktori home user biasa. Itu menciptakan masalah ketika nanti berjalannpm
tanpanyasudo
juga ingin membaca dan mungkin menulis~/configstore/update-notifier-npm.json
. Untuk beberapa alasan, ijinnya adalah 600 untuk keduanya.Berhati-hatilah saat
chown
danchmod
-ai semuanya di bawah~/.config
, mungkin ada sesuatu yang sensitif di sana.sumber
Tolong, jangan gunakan
chown
perintah yang disediakan dalam pesan kesalahan. Path~/.config
digunakan oleh banyak aplikasi dan merupakan path standar untuk menyimpan informasi konfigurasi. Tidak disarankan untuk mengubah hak grup di sana. Lebih baik ubah saja jalur yang diperlukan seperti:Kasus khusus: Docker
Kasus umum untuk mendapatkan kesalahan ini adalah menggunakan sesuatu seperti Docker (terutama dengan memasang rumah Anda sendiri). Pertimbangkan pengaturan variabel lingkungan seperti
NPM_CONFIG_CACHE
danXDG_CONFIG_HOME
. Yang pertama mengatur jalur cache Anda dan yang terakhir adalah mengatur jalur configstore Anda. Saya tidak akan menggunakan.config
folder di direktori home untuk menghindari masalah dengan kepemilikan file. Tetapi menggunakan cache membantu layanan seperti NPM untuk menghemat bandwidth. Cobalah untuk menghindari unduhan berlebih pada setiap bangunan dan gunakan sesuatu seperti ini (tetapi periksa bahwa target seperti/tmp
memiliki ruang disk yang cukup):sumber
Nah, hal pertama yang bisa kita lakukan untuk menyelesaikan masalah ini adalah
Jika ini membantu Anda tahu apa yang harus dilakukan.
Catatan: Prosedur yang sama juga dapat diterapkan untuk configstore saja dalam folder .config.
sumber