답변:
파일 또는 디렉토리에 확장 된 속성이있는 경우 권한 필드에 @가 표시됩니다. 확장 보안 정보 (ACL)의 경우 +가 표시됩니다.
에서 man ls
OS X에서 :
-@ Display extended attribute keys and sizes in long (-l) output.
이 xattr
프로그램은 확장 된 속성을 표시하고 조작하는 데 사용할 수 있습니다. 그러나 속성을 삭제하는 동안 가기로 결정하기 전에 거기에 무엇이 있는지 살펴보십시오. xattr 매뉴얼 페이지를 확실히 살펴보십시오.
PHP 예제 코드의 간단한 예를 참조하십시오.
$ ls -@l php-compromise.php
-rw-r--r--@ 1 user group 502620 Jul 5 2011 php-compromise.php
com.apple.FinderInfo 32
com.apple.TextEncoding 15
정정을 위해 @Jeff에게 감사드립니다. 나는 생각 나지 않았다.
@
확장 속성이 설정되어 표시된다+
ACL에 표시됩니다.@
.명령 ls -le filename
을 실행하여 ACL이 설정되어 있는지 확인하십시오.
파일에 액세스하는 데 문제가있는 것 같으므로 확장 속성 외에도 ACL 세트가 있습니다.
echo | sudo chmod -E filename
파일 또는 echo | sudo chmod -R -E directory name
디렉토리 에 대한 ACL 실행 을 제거하려면
참고 항목 chmod를 man 페이지를 .
@
확장 속성과 +
ACL 세트를, LS가 표시됩니다 것으로 보인다 @
. 파일에 액세스하는 데 문제가 있으므로 ACL에 문제가있을 가능성이 높습니다.
사과 검역 속성을 사용하면 chmod로는이를 제거하기에 충분하지 않습니다.
속성을 명시 적으로 제거해야합니다.
sudo xattr -d com.apple.quarantine my_file
는 @
표준 유닉스 파일 권한에 추가하여, 확장 된 속성을 의미합니다.
확장 된 속성을 확인하십시오.
ls -l@
단일 파일에 대한 모든 확장 된 속성을 재설정하십시오.
sudo xattr -c <filepath>
모든 확장 된 속성을 재귀 적으로 재설정하십시오.
sudo xattr -rc <directory>
sudo chmod -R -N <directory>
macOS High Sierra (10.13) 및 macOS Mojave (10.14.6)에서 확인되었습니다.
나는 것을 발견 -E
하거나 -N
사용하는 경우에도 실제로는 보이지 않습니다 sudo
. 내가 고칠 수있는 유일한 방법은 루트 로 로그인하는 것입니다.