-rw-r--r--+에 대해 ACL을 올바르게 설정

-rw-r--r--+에 대해 ACL을 올바르게 설정

다음과 같이 새 파일에 대한 기본 ACL 권한을 설정할 수 있었습니다.

sudo setfacl -Rdm u:usernamehere:rwx /var/www/path/to/files

이는 모든 새 파일에 다음 권한을 부여하는 것으로 보입니다.

-rw-r-----+

새 파일에 다음 권한을 부여하고 싶습니다.

-rw-r--r--+

차이가 있다면 CentOS를 실행하고 있습니다.

이에 대한 도움을 주시면 대단히 감사하겠습니다.

감사해요!

답변1

먼저, 지정된 사용자 또는 그룹에 대한 ACL 항목이 있는 파일 ACL에는ACL 마스크이러한 ACL 항목 및 그룹 소유자 항목이 부여하는 권한을 제한하는 항목입니다. 그룹 권한 ls및 기존 권한 비트만 보는 기타 유틸리티에 대한 마스크 항목이 나타납니다.

따라서 ACL 마스크가 임을 ls표시 하면 ACL 권한이 로 작동한다는 의미입니다 . 그것은 아마도 당신이 원하는 것이 아닐 것입니다. 반면에 이는 과 달리 소유된 파일의 경우에도 마찬가지입니다 . 첫 번째는 마스크가 적용되는 명명된 항목이고 두 번째는 파일 소유자에 대한 항목입니다.-rw-r--r--+r--u:usernamehere:rwxu:usernamehere:r--u:usernamehere:rwxu::rwxusernamehere아니요제한된.

마스킹의 개념은 동등한 도구를 실행하면 chmod go-rwx소유자 외에는 누구도 파일에 액세스할 수 없게 될 수 있다는 것입니다. 마스크 항목 삭제를 사용할 수 있지만 setfacl -x m:: filename사용자 또는 그룹 항목이 지정되지 않은 경우에만 작동합니다.

어떤 경우든 동일한 명령에 여러 기본 항목을 추가할 수 있습니다. 그러면 파일 소유자가 권한을 갖고 rwx마스크가 로 설정되고 r--"기타"에 대한 권한이 다음으로 설정 되도록 기본 항목이 설정됩니다 r--.

$ setfacl -R -d -m u::rwx -m m::r-- -m o::r-- /path

그룹 소유자( )에 대한 기본 ACL을 명시적으로 설정할 수도 있습니다 g::. 해당 항목은 어떤 경우에도 나타나기 때문입니다(해당 값은 권한 비트에서 가져올 수 있음). 예를 들어, 여기에서 그룹 소유자에 대한 항목은 마스크로 인해 제한되므로 완전히 유효하지 않습니다.

default:user::rwx
default:group::r-x              #effective:r--
default:mask::r--
default:other::r--

디렉토리에 생성된 파일 ls-rw-r--r--+.


그런 다음 지정된 사용자에게 언급된 권한을 부여하려는 경우 마스크 필드를 생략하면 setfacl실제 ACL 항목에 사용하는 권한에 따라 설정됩니다.

setfacl -R -d -m u::rwx -m u:usernamehere:rwx -m o::r-- /path

디렉토리에 생성된 파일은 이제 lsas -rw-rw-r--+및 에 표시됩니다 getfacl.

user::rw-
user:usernamehere:rwx           #effective:rw-
group::r-x                      #effective:r--
mask::rw-
other::r--

xtouch를 사용하여 파일을 만들었고 권한을 사용하여 비트를 0666마스킹 했기 때문에 마스크가 누락되었습니다 x.

관련 정보