Mac-Osx

如何在 Mac OS X 上將 ACL 更改為名稱中包含空格的組?

  • March 21, 2014

我正在嘗試為組“域使用者”添加 ACL,但由於組名中有空格,因此 chmod 無法正確解析:

$ chmod -R +a 'DOMAIN\Domain Users allow list,search,readattr,readextattr,readsecurity,file_inherit,directory_inherit' shared
Unable to translate 'DOMAIN\Domain' to a UID/GID

我該如何逃離這個空間?我用單引號、雙引號和反斜杠嘗試了所有明顯的方法。

由於 Apple 的chmod 源可用,因此解析器中有一個提示:

if (strchr(pebuf, ':')) /* User/Group names can have spaces */

實際上,如果您閱讀手冊頁,它會說:

如果使用者名或組名包含空格,您可以使用“:”作為名稱和權限之間的分隔符。

因此解決方案是:

$ chmod +a 'DOMAIN\Domain Users:allow list,search,readattr,readextattr,readsecurity,file_inherit,directory_inherit' shared

引用自:https://serverfault.com/questions/583620