मैं इस यूनिक्स व्यवहार को समझने की कोशिश कर रहा हूं (जो कि मैं Ubuntu 11.10 पर परीक्षण कर रहा हूं):
$ touch foo
$ setfacl -m u:nobody:rwx foo
$ getfacl foo
# file: foo
# owner: michael
# group: michael
user::rw-
user:nobody:rwx
group::rw-
mask::rwx
other::r--
$ chmod g-rw foo
$ getfacl foo
# file: foo
# owner: michael
# group: michael
user::rw-
user:nobody:rwx #effective:--x
group::rw- #effective:---
mask::--x
other::r--
ध्यान दें कि chmod (1) कमांड ने ACL मास्क को अपडेट किया है। ऐसा क्यों होता है?
SunOS मैनपेज निम्नलिखित में क्या कहना है:
यदि आप ACL प्रविष्टियों के साथ फ़ाइल पर फ़ाइल समूह स्वामी अनुमतियों को बदलने के लिए chmod (1) कमांड का उपयोग करते हैं, तो फ़ाइल समूह स्वामी अनुमतियाँ और ACL मास्क दोनों नई अनुमतियों में बदल जाते हैं। ध्यान रखें कि नए ACL मास्क अनुमतियाँ उन अतिरिक्त उपयोगकर्ताओं और समूहों के लिए प्रभावी अनुमतियाँ बदल सकती हैं जिनके पास ACL प्रविष्टियाँ हैं।
मैं पूछता हूं क्योंकि यह मेरे लिए सुविधाजनक होगा यदि चामोद (1) में यह व्यवहार नहीं था। मुझे उम्मीद है कि यह समझने से कि यह क्या करता है, मैं बेहतर डिज़ाइन कर सकता हूं कि मैंने फाइलसिस्टम अनुमतियों को कैसे सेट किया।