개요
ACL은 파일 시스템 객체에 대한 권한을 사용자, 그룹, 또는 다른 식별자에 따라 세밀하게 제어할 수 있도록 해주는 기능입니다. getfacl은 이러한 ACL 설정을 읽어와 현재 적용된 권한 규칙을 보여줍니다.
주요 특징
- 전통적인 rwx 권한을 넘어선 세분화된 권한 설정 확인
- 특정 사용자 또는 그룹에 대한 개별 권한 확인
- 디렉토리의 기본(default) ACL 확인 기능 제공
- 재귀적으로 하위 파일 및 디렉토리의 ACL 확인
주요 옵션
getfacl 명령어는 ACL 정보를 조회할 때 다양한 옵션을 통해 출력 형식을 제어하거나 특정 유형의 ACL만 조회할 수 있습니다.
조회 및 출력
생성된 명령어:
명령어를 조합해 보세요.
설명:
`getfacl` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
getfacl 명령어를 사용하여 파일 및 디렉토리의 ACL을 확인하는 다양한 방법을 보여줍니다.
특정 파일의 ACL 확인
getfacl sample.txt
sample.txt 파일의 현재 ACL 설정을 확인합니다.
디렉토리의 기본 ACL 확인
getfacl -d my_directory
my_directory 디렉토리에 설정된 기본 ACL을 확인합니다. 이 ACL은 해당 디렉토리 내에 새로 생성될 파일/디렉토리에 적용됩니다.
디렉토리와 하위 항목의 ACL 재귀적 확인
getfacl -R data_dir
data_dir 디렉토리와 그 안에 있는 모든 파일 및 서브디렉토리의 ACL을 재귀적으로 확인합니다.
헤더 없이 ACL 정보만 출력
getfacl --omit-header report.log
report.log 파일의 ACL 정보를 헤더 없이 간결하게 출력합니다. 스크립트에서 파싱할 때 유용합니다.
설치
getfacl 명령어는 일반적으로 'acl' 패키지의 일부로 제공됩니다. 대부분의 리눅스 배포판에 기본적으로 설치되어 있지만, 최소 설치 환경에서는 수동으로 설치해야 할 수 있습니다.
Debian/Ubuntu
sudo apt update && sudo apt install acl
apt 패키지 관리자를 사용하여 'acl' 패키지를 설치합니다.
RHEL/CentOS/Fedora
sudo dnf install acl
# 또는
sudo yum install acl
yum 또는 dnf 패키지 관리자를 사용하여 'acl' 패키지를 설치합니다.
팁 & 주의사항
ACL을 효과적으로 사용하고 관리하기 위한 팁과 주의사항입니다.
ACL 적용 여부 확인
파일이나 디렉토리에 ACL이 적용되어 있다면, 'ls -l' 명령어를 실행했을 때 권한 문자열 끝에 '+' 기호가 붙습니다. (예: -rw-rw-r--+)
- ls -l 출력: 권한 문자열 끝에 '+' 확인
ACL과 전통적인 권한의 관계
ACL은 전통적인 rwx 권한과 함께 작동합니다. ACL이 설정되면, 전통적인 권한은 'mask' 역할을 하여 ACL에 설정된 최대 유효 권한을 제한할 수 있습니다. 'mask' 항목은 getfacl 출력에서 확인할 수 있습니다.
setfacl과의 연동
ACL을 설정하거나 수정하려면 'setfacl' 명령어를 사용해야 합니다. getfacl로 현재 설정을 확인한 후 setfacl로 변경하는 워크플로우가 일반적입니다.
파일 시스템 지원
ACL은 모든 파일 시스템에서 지원되는 것은 아닙니다. ext2/3/4, XFS 등 대부분의 최신 리눅스 파일 시스템은 ACL을 지원하지만, 파일 시스템이 ACL을 마운트 옵션으로 활성화해야 할 수도 있습니다 (예: mount -o acl).