BTRFS로 풍부한 액세스 제어 목록을 적용하고 사용하는 방법

BTRFS로 풍부한 액세스 제어 목록을 적용하고 사용하는 방법

저는 Linux의 풍부한 액세스 제어 목록에 대해 배우고 있습니다. 나의 즉각적인 목표는 이 그룹의 구성원에게 하위 디렉터리 트리(그 안에 있는 모든 파일 및 디렉터리)의 소유자와 동일한 권한을 부여하는 것입니다.

나는 setfattr 및 getfattr에 대한 매뉴얼 페이지를 살펴보았습니다. 이러한 매뉴얼 페이지 중 어느 것도 사용 가능한 RichACL 목록을 제공하지 않습니다. (저는 실제로 BTRFS와 호환되는 RichACL에만 관심이 있습니다.)

여기 또 다른 좋은 자료가 있습니다richacl: 풍부한 액세스 제어 목록 - Linux 매뉴얼 페이지 (7)이는 약간의 맥락을 제공합니다.

다음과 같은 몇 가지 간단한 예를 만들었습니다.

setfattr -n user.comment -v "this is a comment" test.txt

다음은:

getfattr test.txt

setfacl나는 이 작업이 및 와 다르다는 것을 알고 있습니다 getfacl.

또한 확장된 파일 속성에는 네 가지 네임스페이스가 있다는 것도 알고 있습니다.

  • 사용자
  • 신뢰할 수 있는
  • 안전
  • 체계

나는 RichACL이 POSIX ACL보다 더 풍부하다는 것을 알고 있습니다. ACL은 확장 속성과 동일하지 않습니다(단, xattr 네임스페이스에 저장될 수 있음). 내가 원하는 작업의 세부 사항은 파일 시스템에 따라 다르다는 것을 알고 있으며 괜찮습니다. 나는 BTRFS에만 관심이 있습니다.

그런데 제가 정보가 너무 부족해서뭐든 유용한 일을 해라하지만. 말씀드렸듯이 제가 가장 먼저 하고 싶은 일은그룹에 소유자와 동일한 권한 부여파일이나 디렉토리의. 그런 다음 이 디렉터리 내의 하위 디렉터리와 파일에 이를 상속하고 싶습니다.

몇 가지 구체적인 예는 다음과 같습니다. 내가 적합하다고 생각하는 경우 그룹 구성원이 chmod, chatttr심지어 와 같은 작업을 수행할 수 있기를 바랍니다 .chown

편집: 답변의 일부로 풍부한 ACL을 읽고 설정하는 데 사용되는 유틸리티(프로그램)도 언급해 주십시오. 나는 setfattr그것이 풍부한 ACL과 함께 사용되는 것을 보았습니다 . 그러나 이라는 유틸리티에 대한 참조도 보았지만 setrichaclArch Linux에서는 그러한 유틸리티를 찾을 수 없습니다.

ACL에 대한 기본 커널 구성 정보:

$ zcat /proc/config.gz | grep -i acl
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_JFFS2_FS_POSIX_ACL=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_CEPH_FS_POSIX_ACL=y
CONFIG_9P_FS_POSIX_ACL=y

답변1

메인라인 Linux 커널은 Rich ACL을 지원하지 않는 것으로 나타났습니다.

원천:https://wiki.samba.org/index.php/NFS4_ACL_overview#Linux

또한 2019년 5월 2일 현재:

Re: 패치 overlayfs: ext4 upperdir의 빈 NFSv4 ACL 무시 - Andreas Gruenbacher

구현을 위한 패치는 몇 번이고 거부되었으며 더 이상 이에 대한 작업을 수행하는 사람이 없습니다.

이 정보를 제공해 주신 Reddit 사용자 Progandy에게 감사드립니다.

관련 정보