Nie można zainstalować Bower


0

Jestem zalogowany z moim lokalnym kontem, nawet skorzystałem z konta SSH.

Próbowałem zainstalować Bower za pomocą następującego polecenia:

npm install -g bower

i otrzymuję ten błąd:

npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
/usr/local/lib
└── bower@1.7.9 

npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "bower"
npm ERR! node v6.3.1
npm ERR! npm  v3.10.3
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access

npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!     at Error (native)

Błąd jest dość oczywisty, mam 2 pytania:

  1. Dlaczego tak się dzieje z moim lokalnym kontem administratora?
  2. Jak mogę to naprawić?

1
Z tego, co napisałeś, wydaje się, że uruchamiasz polecenie ze zwykłym kontem użytkownika bez uprawnień do zapisu we wspomnianym katalogu. Fraza " dodany do tego konta z SSH „jest niezrozumiały.
techraf

1
Jak „dodałeś do tego konta z SSH”
Mark

Odpowiedzi:


2

Sprawdź swoje skuteczne zezwolenie:

id

powie Ci, czy masz wymagane przywileje ( uid=0(root) ... ).

Następnie bądź ostrożny przy użyciu sudo. Ostrzegam, że łatwo jest złapać początkujących administratorów w błąd sudo aby ukraść ich hasło. Zawsze używaj standardowej i jawnej ścieżki sudo:

/usr/bin/sudo npm ...

lub jeśli wolisz, sprawdź, czy nie używasz niewłaściwego:

type sudo

który powinien odpowiedzieć poprawną odpowiedzią:

sudo is /usr/bin/sudo

(i nic innego, co byłoby złym znakiem).


1

Spróbuj tego polecenia zamiast:

sudo npm install -g bower

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.