Das Festlegen der Standard-ACL funktioniert nicht wie erwartet

Das Festlegen der Standard-ACL funktioniert nicht wie erwartet

Ich werde an einem Webprojekt arbeiten und habe daher einen wwwOrdner darin $HOME. Ich möchte, dass dieser Ordner der Gruppe gehört und usergleichzeitig dieser Gruppe angehört www-data. Ich gebe Folgendes ein:

mkdir $HOME/www
chmod g+rxs,u+rwx,o-rwx $HOME/www
chown user.www-data $HOME/www

Dann ls -alh | grep wwwergibt sich:

drwxr-s---  2 user www-data     4,0K Aug 10 17:33 www

Darüber hinaus möchte ich, dass Standardberechtigungen unabhängig von den Berechtigungen der erstellenden Prozesse festgelegt werden. Also mache ich:

setfacl -m d:u::rwx,d:g::rx,d:o::- $HOME/www

Dann getfacl $HOME/wwwergibt sich:

# file: www
# owner: user
# group: www-data
# flags: -s-
user::rwx
group::r-x
other::---
default:user::rwx
default:group::r-x
default:other::---

Nun habe ich cdin den neu erstellten Ordner Folgendes eingegeben:

touch testfile

Und dann ls -alh | grep testfilegibt es:

-rw-r-----   1 user www-data    0 Aug 10 17:44 testfile

Wie Sie sehen, www-datawurde die Gruppe aufgrund des setgidBits übernommen. Die Standard-ACLs des Verzeichnisses $HOME/wwwwurden jedoch nicht übernommen (wie ich erwartet hätte). $HOMEhat andere Standard-ACLs als $HOME/www- aber ich würde erwarten, dass das manuelle Überschreiben der Standard-ACLs der Unterverzeichnisse recht unkompliziert funktioniert.

Ich möchte, dass die Unterverzeichnisse und Dateien darin $HOME/wwwdie oben angegebenen Standardberechtigungen haben. Was übersehe ich hier?

Antwort1

Dateien erhalten standardmäßig keine Ausführungsberechtigung. Verzeichnisse schon. Versuchen Sie, ein Verzeichnis zu erstellen. Es sollte die erwarteten Berechtigungen haben. Dateien sollten die erwarteten Standardberechtigungen abzüglich der Ausführungsberechtigungen erhalten.

verwandte Informationen