확장 속성(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
참조