저는 Mac OS의 두 번째 "관리자" 사용자입니다. 저는 그룹에 속해 있으며 첫 번째 사용자가 설치한 것을 admin
사용하려고 합니다 .homebrew
나는 ie의 모든 것이 쓰기 가능한지 확인했습니다 /usr/local/*
.admin
sudo chmod -R g+w /usr/local/*
brew install
몇 가지 다른 패키지를 실행하려고 할 때 몇 가지 오류가 발생합니다.
cp: setattrlist: /usr/local/Cellar/[email protected]/.: Permission denied
cp: chmod: /usr/local/Cellar/[email protected]/.: Operation not permitted
Error: Failure while executing; `cp -pR /private/tmp/d20210523-60782-14t7vu8/[email protected]/. /usr/local/Cellar/[email protected]` exited with 1. Here's the output:
cp: setattrlist: /usr/local/Cellar/[email protected]/.: Permission denied
cp: chmod: /usr/local/Cellar/[email protected]/.: Operation not permitted
하지만 확인해보니 폴더에 내가 기대하는 권한이 있습니다.
:; ls -al /usr/local/Cellar/icu4c/
total 0
drwxrwxr-x 3 user1 admin 96 May 23 14:06 .
drwxrwxr-x 73 user1 admin 2336 May 23 14:05 ..
drwxrwxr-x 12 user1 admin 384 May 23 14:06 67.1
내가 여기서 무엇을 놓치고 있는지 아는 사람 있나요?
답변1
실제로 답변은 없지만 동일한 문제에 직면하고 있지만 근본 원인을 찾고 문제를 해결하는 데 도움이 될 수 있는 몇 가지 단서가 있을 수 있습니다. 내 경우에는 두 개의 관리자 계정이 있기 때문에 Brew 설치 시 ACL을 사용했지만 ACL을 사용하지 않기 때문에 이는 ACL 문제가 아닐 가능성이 높습니다.
모든 관리자가 Brew를 사용할 수 있도록 관리자용 ACL을 설정하는 설치 후 스크립트가 있습니다. Brew를 사용하여 설치할 때마다 이 스크립트를 사용하여 소유자를 복원하고 ACL을 설정합니다.
내가 아는 것은 setattrlist와 fsetattrlist가 메타데이터에 관한 것이므로 파인더/스포트라이트 정보라는 것뿐입니다. 이 오류를 완전히 제거할 수 있는 ACL 방법을 찾지 못했습니다.
홈브류가 복사를 수행하는 것과 동일한 방식을 사용하면 홈브류 설치 외부에서 재현할 수 있습니다.
예를 들어 $ cp -pR /usr/local/Cellar/webp ~/webp $ cp -pR ~/webp/. /usr/local/Cellar/webp # ⇒ 권한 오류 또는 setattrlist 오류가 발생합니다. $ cp -pR ~/webp /usr/local/Cellar/webp # ⇒ 작동하므로 homebrew에서 / 를 찾아서 제거하는 수정 사항이 있을 수 있습니다. cp의 소스를 형성합니다.
지금까지 이 오류가 발생하면 Cellar에서 디렉터리를 삭제하고 Brew install 명령을 다시 시작했습니다.
Brew가 많은 것을 업데이트하는 것은 지루한 작업이지만 이것이 지금까지 제가 찾은 유일한 해결 방법입니다.