pengembangan-web-mp-pd.com

Bagaimana cara mendapatkan setfacl untuk mengatur izin ACL secara rekursif di Linux?

Saya sedang menyiapkan server baru dan ingin memberikan ACL kesempatan di atas chown: chgrp: izin gaya chmod.

Halaman manual untuk setfacl menunjukkan bahwa opsi '-R' dapat digunakan untuk mengatur ACL secara rekursif pada file dan direktori.

-R, --recursive Menerapkan operasi ke semua file dan direktori secara rekursif. Opsi ini tidak dapat dicampur dengan ‘--restore’.

Jika tata letak direktori saya terlihat seperti ini

test/
   subtest/
   subtest.txt

dan saya mengeksekusi

setfacl -Rm d:u:foo:rwX test

ACL berlaku pada direktori 'subtest', tetapi bukan file subtest.txt.

Saya pikir saya bisa menggunakan find + exec untuk mengatasinya, tetapi saya berencana menggunakan server ini untuk melatih beberapa admin lainnya dan saya ingin menjaganya sesederhana mungkin sehingga kami tidak terpaku pada beberapa yang lebih canggih konvensi.

Terima kasih

20
Joe Holloway

Mencoba:

setfacl -Rm u:foo:rwX,d:u:foo:rwX test

untuk mengubah ACL saat ini dan juga default. Saya percaya "d:" hanya mempengaruhi (d) efault ACL dari direktori dan membiarkan file tidak tersentuh. Kemudian, jika Anda membuat file bar di direktori, itu mewarisi ACL dari direktori induknya melalui default.