Jump to content
php.lv forumi

2 npm versijas uz 1 servera


maarc93

Recommended Posts

Kad izsaucu npm no parastā lietotāja, tad tiek izmantota vecā versija, bet ja izmanto root lietotāju, tad ir jaunāka versija. Kā lai šo izlabo?

ubuntu:~$ npm -v
1.3.10
ubuntu:~$ sudo npm -v
5.4.1
ubuntu:~$ which npm
/usr/bin/npm
ubuntu:~$ sudo which npm
/usr/local/bin/npm

 

Link to comment
Share on other sites

simply run rm /usr/local/bin/npm from the regular user

no parastā lietotāja nevaru izdzēst, jo nav tiesības. ja izdzēšu ar sudo tiesībām, tad:

ubuntu:~$ npm -v
1.3.10
ubuntu:~$ sudo npm -v
1.3.10
ubuntu:~$ npm i -g npm
[nevar updeitot, nav tiesību]
ubuntu:~$ sudo npm i -g npm
[instalēšana pabeigta]
ubuntu:~$ npm -v
1.3.10
ubuntu:~$ sudo npm -v
5.4.2

 

Edited by maarc93
Link to comment
Share on other sites

un ko rāda ar katru useru?

which node

vēl varētu padalīties info ar ubuntu versiju, jo ubuntu 14smth un <7node versijas tur daudzi gļuki bija ubuntu vidē, kurus varēja sākt atrisināt tikai n reizes metot nost un liekot pa jaunu pašu nodi. Iespējams vērts apskatīties arī `node -v` no abiem useriem un `which node`

Edited by jurgenz
Link to comment
Share on other sites

which npm rāda to pašu ko sākumā. uz servera ir Ubuntu 14.04.3 LTS. 

ubuntu:~$ node -v
The program 'node' can be found in the following packages:
 * node
 * nodejs-legacy
Try: sudo apt-get install <selected package>
[ups, netīšān biju izdzēsis kopējot stackoverflow komandu]
ubuntu:~$ sudo node -v
v7.8.0
ubuntu:~$ which node -v
ubuntu:~$ sudo which node
/usr/bin/node

tad vienkāršāk ir izdzēst un ieinstalēt pa jaunam? kā pareizi dzēst?

Edited by maarc93
Link to comment
Share on other sites

Skaties kāds ir $PATH un kurās vietās tiek meklēta "node" komanda ar "echo $PATH". Skaties, kā jau minēja, kur tagad pointo "node" komanda ar "which node".

Tad saliec abiem lietotājiem pareizu $PATH pie logina.

Link to comment
Share on other sites

ok, abiem lietotājiem $PATH ir vienāds - /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

tad root lietotājam ar which npm rāda, ka npm atrodas /usr/local/bin, eju uz turieni un redzu, ka tur ir symlink:

lrwxrwxrwx 1 root  root        38 Sep 19 22:57 npm -> ../lib/node_modules/npm/bin/npm-cli.js

bet ar parasto lietotāju vēl joprojām rāda, ka npm neeksistē. kur varētu būt vaina?

Link to comment
Share on other sites

atklāju, ka uz node_modules folderi nebija tiesības parastajam lietotājam. bet katru reizi palaižot npm, rāda, ka nepieciešamas administratora tiesības

npm ERR! path /home/mzo/.npm/_logs
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall scandir
npm ERR! Error: EACCES: permission denied, scandir '/home/mzo/.npm/_logs'

 

Edited by maarc93
Link to comment
Share on other sites

On 9/21/2017 at 4:44 PM, daGrevis said:

Skaties kāds ir $PATH un kurās vietās tiek meklēta "node" komanda ar "echo $PATH". Skaties, kā jau minēja, kur tagad pointo "node" komanda ar "which node".

Tad saliec abiem lietotājiem pareizu $PATH pie logina.

sudo ir secure_path(check visudo), kurā nav viss, kas ir defaultajā user'u path'ā

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...