IIRC에 표시된 설치 옵션이 /proc/mounts
변경되었습니다. acl
및는 얼마 전에 표시되었지만 user_xattr
이제는 이러한 기능이 꺼진 경우에만 및가 표시되는 것 같습니다 noacl
.nouser_xattr
이것은 어디에 구성되어 있나요? 이는 파일 시스템 코드의 컴파일 기본값에 따라 달라지나요? 볼륨이 ACL 등을 지원하는지 확인하는 방법은 무엇입니까? setfacl
테스트를 위해 를 사용하는 것보다 더 나은 솔루션이 있습니까 getfacl
?
답변1
답변2
일부 파일 시스템 유형은 마운트 옵션 없이 ACL을 지원하는 반면, 다른 파일 시스템 유형은 마운트 옵션만 지원합니다. ext2/ext3/ext4의 경우 일부 기본 마운트 옵션(acl/noacl 포함)이 파일 시스템에 저장됩니다( 에서 볼 수 있음 tune2fs -l /dev/BLOCK_DEVICE | grep '^Default mount options:'
). ~처럼don_crissti가 지적함, ext4의 경우 이 옵션이 표시되는지 여부는 커널 버전에 따라 다릅니다(커널 2.6.39부터는 acl
파일 시스템에 관계없이 기본적으로 켜져 있습니다). vfat 및 minix와 같은 파일 시스템은 ACL을 지원하지 않습니다. tmpfs, xfs, zfs와 같은 파일 시스템은 항상 ACL을 지원해 왔습니다.
파일 시스템 유형, 버전, 기본값을 확인하는 명령, 커널 버전으로 구성된 대규모 테이블을 작성하고 유지하려는 경우가 아니면 마운트 옵션이나 파일 시스템 특성을 통해 파일 시스템이 ACL을 지원하는지 여부를 확인할 수 있는 방법이 없습니다. getfacl
항상 최소한의 Unix 권한을 보고하므로 순수한 관찰만으로는 알 수 없습니다 . 파일 시스템이 ACL을 지원하더라도 원하는 ACL 유형을 지원하지 않을 수 있습니다. 따라서 가장 좋은 방법은 호출 setfacl
(또는 기본 C API)하여 원하는 ACL을 설정해 보는 것입니다. 오류 상태가 EOPNOTSUPP(작업이 지원되지 않음)인 경우 파일 시스템이 ACL을 지원하지 않는다는 것을 알 수 있습니다.