Amazon Linux(RHEL 배포판)에서 xfs 파일 시스템과 함께 ACL을 사용하려고 합니다. 그러나 acls를 구성하고 테스트 사용자를 사용하여 파일에 액세스하려고 하면 액세스가 거부됩니다.
현재 2명의 사용자가 있습니다:
EC2 사용자:사용자는 파일을 생성하고 관리합니다. 소유자 및 전체 rwx 액세스
테스트 사용자:ACL을 통해 명시적으로 지정된 액세스 권한
질문:
- xfs에 대한 나의 현재 이해는 acls가 "즉시" 사용될 수 있다는 것입니다. ext3/ext4와 달리 마운트할 때 이 옵션을 활성화할 필요가 없습니다. 맞습니까?
- 아래는 파일을 생성하고 라이센스를 부여하는 방법에 대한 코드 조각입니다. 이것이 acl의 올바른 구현입니까?
# Create directory and add file
sudo mkdir /aclDirectory
sudo echo "some content" | sudo tee /aclDirectory/test.txt
# Change owner to EC2 user and give RW access to 'testuser'
sudo chown -R ec2-user /aclDirectory/
chmod -R 0700 /aclDirectory/
setfacl -R -m u::testuser:rw /aclDirectory
# validate ACL permissions
getfacl /aclDirectory/test.txt
getfacl: Removing leading '/' from absolute path names
# file: aclDirectory/test.txt
# owner: ec2-user
# group: root
user::rwx
user:testuser:rw-
group::---
mask::rw-
other::---
# Read test.txt
cat /aclDirectory/test.txt
cat: /aclDirectory/test.txt: Permission denied
답변1
확장 및 XFS 파일 시스템은 이제 자동으로 ACL 옵션을 사용합니다. 사용자가 testuser
NET에서 파일을 보려면 실행 권한이 필요합니다 /aclDirectory
. 디렉터리 자체의 ACL이 필요합니다.그리고디렉터리에 생성된 모든 새 파일 시스템 개체에 대한 ACL입니다.
# Remove the ACLs.
sudo setfacl -b /aclDirectory
# Create the default ACL (for filesystem objects created within the directory).
sudo setfacl -d -m u:testuser:rwx /aclDirectory
# Set an ACL for the directory itself.
sudo setfacl -m u:testuser:rwx /aclDirectory
ec2-user
그런 다음 그림 과 같이 테스트 파일을 만듭니다 testuser
.