Kiedy próbuję to zrobić:
brew install node
Otrzymuję tę wiadomość:
/usr/local/Homebrew/Library/Homebrew/utils/lock.sh: line 19: /usr/local/var/homebrew/locks/update: Permission denied
-e:1:in `initialize': Bad file descriptor (Errno::EBADF)
from -e:1:in `new'
from -e:1:in `<main>'
Error: Another active Homebrew process is already in progress.
Please wait for it to finish or terminate it to continue.
Error: Permission denied - /usr/local/var/homebrew/locks/node.brewing
Masz jakiś pomysł, jak to rozwiązać?
for file in
ls * lock; do mv $file $file.old; done
?locks
pliki, miał cel i usuwanie to nie najbezpieczniejsza opcja.Jak sugeruje ten wątek w pewnym momencie, moim problemem było uruchomienie polecenia brew z uprawnieniami sudo po raz pierwszy. Powoduje to, że brew próbuje uzyskać dostęp do uprzywilejowanych plików i folderów i kończy się to niepowodzeniem. Jeśli tak jest w Twoim przypadku, uruchom te polecenia i spróbuj ponownie zainstalować węzeł.
sudo chown -R "$USER":admin /usr/local
brew cleanup
źródło
chown
przywróciło całą funkcjonalność bez błędów.ls -la /usr/local/
. Jeśli tak nie jest, spróbuj dodać gwiazdkę, aby zasugerować wszystkie pliki podrzędne (npsudo chown -R "$USER":admin /usr/local/*
.).wystarczy zamknąć terminal i ponownie otworzyć kolejny
źródło
Po prostu wpisz w terminalu:
To powinno rozwiązać wszelkie problemy. Postępuj zgodnie z poleceniem:
Gotowe.
źródło
W moim przypadku na OSX przerwałem instalację węzła, a następnie próbuję ponownie uruchomić węzeł instalacyjny, więc otrzymałem błąd wspomniany w pytaniu.
Wypróbowałem poniższe kroki z innych odpowiedzi:
i
ale ten komunikat pojawia się ponownie - więc nie wiem, czy powyższe kroki pomogły.
Następnie zamknąłem kartę terminala i uruchomiłem nowy
Pomyślna instalacja węzła zajęła 11 minut
źródło
sudo chown -R "$USER":admin /usr/local/*
. Bez gwiazdek nie uzyskałem poprawnego rozszerzenia, a większość pod-plików / -folderów nie została dotknięta przez polecenie.Zmiana uprawnień do pliku pozwoli uniknąć tego błędu:
W przypadku problemów z uprawnieniami podczas instalacji lub aktualizacji homebrew:
Zmień ustawienie uprawnień homebrew
Następnie uruchom instalację lub aktualizację homebrew
źródło
/usr/local/Homebrew
i/usr/local/var/homebrew
właśnie to mi pomogłaNie wiem, co się działo. Mój jedyny aktywny terminal czekał na wejście, żadne zadania nie działały w tle. Właśnie próbowałem uruchomić instalację RVM, która się nie powiodła i poprosiłem mnie o zaktualizowanie Homebrew, ale miało to zostać zakończone, ponieważ terminal czekał na dane wejściowe. Po kilku powtórzeniach wywołań poleceń i kilka minut później przestałem otrzymywać wiadomość.
To jest w systemie Mac OSX 10.13.6 z iTerm2.
źródło