[macOS / Terminal] 파일의 확장 속성(Extended Attributes) 접근제어(ACL) 확인/제거/추가

확장 속성(Extended Attributes)은 특정 파일과 파일 형식에 한정된 메타 데이타 컴포넌트입니다. Quarantine 정보일 수도 있고, Origin 혹은 라벨 정보일 수도 있습니다. 아래 내용은 Extended Attributes와 ACL에 익숙하며, 왜 삭제해야하는지에 대한 이유를 알고 계신 분들에 한한 정보임을 알려드립니다.


확장 속성 확인

아래 커맨드를 실행하였을 때, 끝에 @표시가 있는 것은 확장 속성이 있다는 표시이며, +는 ACL이 있다는 표시 입니다.

ls -l

아래 커맨드로 개별 파일 확장 속성을 확인할 수 있습니다.

~/Desktop (194) $ xattr 1.png
com.apple.metadata:kMDItemIsScreenCapture

확장 속성 추가

아래 문법 및 예시를 참조하시어 진행하시기 바랍니다.

xattr -w [-rsx] attr_name attr_value file ...
xattr -w 1 com.apple.metadata:kMDItemIsScreenCapture 1.png


확장 속성 제거

delete(-d) flag를 사용하여 특정 확장 속성을 제거합니다.

xattr -d com.apple.metadata:kMDItemIsScreenCapture 1.png

선택된 파일의 모든 확장 속성을 제거하고자 하면 clear(-c) flag를 사용합니다.

xattr -c 1.png

디렉토리 안의 모든 파일의 확장 속성을 제거하고자 하면 아래 recursive(-r) 와 clear(-c) flag를 사용합니다.

xattr -rc ~/Desktop

혹, 디렉토리 내의 quarantine 속성만 다 삭제하고자 하시면, 아래 커맨드를 이용하시면 됩니다.

xattr -d com.apple.quarantine *

접근 제어 확인

아래 커맨드를 통해 확인 가능합니다.

ls -le
drwxr-xr-x+ 25 Travelholics staff 850 Dec 6 11:29 Sites/
 0: group:everyone deny delete

접근 제어 삭제 및 추가

삭제 -a 이용

chmod -a "group:everyone deny delete" 1.png

추가 +a 이용

chmod +a "group:everyone deny delete" 1.png

참조

댓글 남기기