Fix sudo: npm: command not found and pm2 command not found

Fix sudo: npm: command not found - Ketika mengalami permasalahan sudo: npm: command not found padahal ketika kita menjalankan dengan perintah tanpa sudo dia ada dan sudah terinstall npm -v (but if without sudo its worked). Untuk mengatasi ini kita perlu me-link kan lokasi installasi npm ke default yang dibaca oleh perintah sudo.


Perlu diketahui sudo akan mencari aplikasi pada directory : /usr/local/bin, nah pada kasus ini biasanya lokasi installasi npm dan node kita tidak disana. Dan untuk mengetahui lokasi installasinya bisa dengan perintah :

which npm

Fix sudo: npm: command not found


Contoh disini saya menginstall npm lewat NVM (Node Version Manager), jadi dia berada di .nvm folder bukan di usr/local/bin. Nah agar npm di folder .nvm ini terbaca oleh sudo kita perlu me-link kanya dengan folder /usr/local/bin dengan cara:

sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/npm" "/usr/local/bin/npm"


Nah  sekarang kita bisa menggunakan sudo npm seperti berikut:

Fix sudo: npm: command not found

Oke selanjutnya kita juga perlu me-link kan node nya, caranya sama saja, cukup ketik perintah berikut:

sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/node" "/usr/local/bin/node"


Disini kita sudah berhasil mem-fix npm yang tidak bisa diakses lewat sudo. Selain itu, jika ada app lain (contoh disini saya mengalami hal yang sama untuk pm2) kita juga bisa melakukan hal yang sama.


Contoh fix sudo pm2 : command not found:

sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/pm2" "/usr/local/bin/pm2" 


Tag: Ubuntu, Server, DevOps

Sumber:  

    - https://stackoverflow.com/questions/21215059/cant-use-nvm-from-root-or-sudo

    - https://stackoverflow.com/questions/31472755/sudo-npm-command-not-found

Posting Komentar

0 Komentar