cp setattrlist MacOS에서 권한이 거부되었습니다.

cp setattrlist MacOS에서 권한이 거부되었습니다.

저는 Mac OS의 두 번째 "관리자" 사용자입니다. 저는 그룹에 속해 있으며 첫 번째 사용자가 설치한 을(를) admin사용하려고 합니다 .homebrew

/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가 메타데이터에 관한 것이므로 finder/spotlight 정보에 관한 것입니다. ACL을 사용하여 이 오류를 완전히 제거할 수 있는 방법을 찾지 못했습니다.

homebrew가 복사를 수행하는 것과 동일한 방식을 사용하면 homebrew 설치 외부에서 재현할 수 있습니다.

예를 들어 $ cp -pR /usr/local/Cellar/webp ~/webp $ cp -pR ~/webp/. /usr/local/Cellar/webp # ⇒ 권한 오류 또는 setattrlist 오류 생성 $ cp -pR ~/webp /usr/local/Cellar/webp # ⇒ 작동하므로 홈브류에서 / . cp의 소스를 형성합니다.

지금까지 이 오류가 발생하면 Cellar에서 디렉토리를 제거하고 Brew Install 명령을 다시 시작했습니다.

Brew가 많은 것을 업데이트할 때 지루한 작업이지만 이것이 현재로서는 제가 찾은 유일한 해결 방법입니다.

관련 정보