다른 답변은 가능한 한 정확하지만 이 문제가 발생하는 이유 와 그 근본 원인을 해결하는 방법에 대해서는 답변하지 않습니다 .
원인
이 문제에는 두 가지 가능한 원인이 있습니다.
- homebrew 설치는 현재 사용중인 사용자 이외의 사용자로 수행되었습니다. Homebrew는 원래 설치 한 사용자 만 사용하기를 원합니다.
- brew를 사용하지 않고 / usr / local에 쓰는 일부 소프트웨어를 설치했습니다. 이것이
brew doctor
당신이 그것을 실행하는 경우 의 원인 입니다.
해결책
멀티 유저 홈브류
여러 사용자 계정이 있고 그 중 하나 이상이 brew를 사용할 수있게하려면 몇 가지 단계를 수행해야합니다. 그렇지 않으면 사용자를 전환 할 때마다 Homebrew 파일 구조의 소유권을 지속적으로 변경해야합니다. 좋은 생각이 아닙니다.
자세한 지침은 온라인 에서 찾을 수 있지만 빠른 답변은 다음과 같습니다.
brew라는 그룹을 만듭니다 .
- 개방형 시스템 환경 설정
- 계정 클릭
- "+"를 클릭하십시오 (필요한 경우 먼저 잠금 해제)
- 에서 새로운 계정 을 선택 그룹
- 입력 양조
- 그룹 만들기를 클릭 하십시오
- 추출 그룹을 선택하고 추출 을 사용하려는 사용자 계정을 추가하십시오.
- / usr / local 폴더 그룹 소유권을 변경하십시오.
sudo chgrp -R brew /usr/local
- 그룹으로 / usr / local에 쓰기 권한을 추가하려면 권한을 변경하십시오.
sudo chmod -R g+w /usr/local
- homebrew 캐시 디렉토리 그룹을 변경하십시오.
sudo chgrp -R brew /Library/Caches/Homebrew
- homebrew 캐시 디렉토리 권한을 변경하십시오.
sudo chmod -R g+w /Library/Caches/Homebrew
단일 사용자 사제
Homebrew에서 둘 이상의 사용자를 사용하지 않으려는 경우 제안에 따라 다른 답변에서 제공하는 솔루션 brew doctor
이면 충분합니다.
sudo chown -R $(whoami) /usr/local
sudo chown -R $(whoami) /Library/Caches/Homebrew
확인
이 단계 후에 새 그룹 멤버십을 적용하기 위해 로그 아웃했다가 다시 로그인했다고 가정하면 브루 그룹의 brew doctor
모든 사용자가 성공한 것으로보고해야 합니다 (다중 사용자 경로로 이동 한 경우). 단일 사용자 홈 브루에 대해 방금 수정 한 경우 그룹 멤버십이 변경되지 않았으므로 로그 아웃했다가 다시 로그인 할 필요가 없습니다.