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
└── [email protected] 

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ć?
Luis Valencia
źródło
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
1
Przeczytaj tę odpowiedź: apple.stackexchange.com/a/14423/22003 .
daniel Azuelos

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).

daniel Azuelos
źródło
1

Spróbuj tego polecenia zamiast:

sudo npm install -g bower

MCCCS
źródło