[permissions] Mac OS X 10.13 High Sierra에서 homebrew를 위해 / usr / local을 chown 할 수 없습니다.

Homebrew는 / usr / local에서 권한이 필요하며 다른 사람이 내 랩톱을 사용하지 않기 때문에 항상 간단하게 수행했습니다.

sudo chown -R $(whoami) $(brew --prefix)

하지만 High Sierra에서는

chown: /usr/local: Operation not permitted

수정 사항은 무엇입니까?



답변

문제가 계속 발생했습니다 … 자세히 살펴본 후 Homebrew를 제거한 다음 다시 설치하면이 문제가 해결된다는 것을 알았습니다.

Homebrew 제거 :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

그런 다음 다시 설치하십시오.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"


답변

불행히도 더 이상 /usr/localHigh Sierra에서 질식 할 수 없습니다 . 해결 방법은하는 것입니다 sudo mkdir /usr/local/include그리고 /usr/local/Frameworks그들이 존재하지 않는 경우, 그리고

sudo chown -R $(whoami) $(brew --prefix)/*

이 간단한 해결 방법과 놀라운 홈브류에 대해 ilovezfs에게 감사드립니다!


답변

/usr/local자신에 대한 권한은 변경할 수 없지만 아래에있는 폴더에 대한 권한은 변경할 수 있습니다.
sudo chown -R $(whoami) /usr/local/*


답변

나는 다음 하지만 문제가 계속 유지됩니다.
그래서 이전 버전을 제거하지 않고 homebrew 를 다시 설치했습니다 . 지금 작동 중입니다!
(어떻게했는지 모르겠다)


답변

나는 이것을 실행하고 모든 것이 높은 시에라에서 처리됩니다.

/ usr / bin / ruby ​​-e “$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )”


답변

시스템 무결성 보호를 비활성화하십시오 . 문서에서 :

시스템 무결성 보호는 csrutil (1) 명령을 사용하여 구성 할 수 있습니다.

터미널에서 다음 명령을 실행하여 시스템에서 현재 시스템 무결성 보호가 활성화되어 있는지 확인할 수 있습니다.

$ csrutil status
System Integrity Protection status: enabled.

시스템 무결성 보호를 활성화 또는 비활성화하려면 복구 OS로 부팅하고 터미널에서 csrutil (1) 명령을 실행해야합니다.

컴퓨터를 다시 시작하고 시작할 때 Command 및 R 키를 눌러 복구 OS로 부팅합니다. 유틸리티 메뉴에서 터미널을 시작합니다. 다음 명령을 입력하십시오.
$ csrutil enable

시스템에서 시스템 무결성 보호를 활성화 또는 비활성화 한 후 재부팅해야합니다.


답변

bash에서 왔기 때문에 zsh를 사용하는 경우 $ PATH를 변경해야 할 수 있습니다. export PATH=$HOME/bin:/usr/local/bin:$PATH
.zshrc를 추가해야합니다 .

그런 다음 작동해야합니다.이 문제는 이런 식으로 Mac에서 해결되었습니다.