OSX/Darwin ACL形式

OSX/Darwin ACL形式

OS Xでは、ファイルのACL情報を表示するには-elsオプションを使用できます。

$ ls -lde app/cache
drwxrwxr-x+ 7 alanstorm  staff  238 Apr  1 10:02 app/cache
 0: user:alanstorm allow add_file,delete,add_subdirectory,file_inherit,directory_inherit
 1: user:root allow add_file,delete,add_subdirectory,file_inherit,directory_inherit
 2: user:_www allow add_file,delete,add_subdirectory,file_inherit,directory_inherit

各行の形式は何ですかACE?これはどこにも文書化されていますか?chmodまたは、マニュアルページには何も見つかりません。ほとんどlsのインターネット記事では、-eオプションを教えてから「ここにACL / ACEエントリがあります」と表示します。

allowこれが何を意味するのかを推測することができます。最後の列は明らかに個々の権限であり、最初の列はユーザ​​ーやグループなどですが、denyOS X ACLで/が何を意味するのか0わかりません12意味論的な意味があり(最も重要なのは)私が知らないものが何であるかわかりません。たとえば、ファイルに対する継承された権限を表示する継承された列があります。

0: user:alanstorm allow add_file,delete,add_subdirectory,file_inherit,directory_inherit 
vs.
0: user:alanstorm inherited allow add_file,delete,add_subdirectory,file_inherit,directory_inherit 

これは空白の構文解析を混乱させ、このようなものが現れる可能性がある他の場所があるかどうか疑問に思います。

ここで誰もが列1と3の個々の問題を解決するのを助けるか、フォーマットをより一般的に説明できる場合は非常に感謝します。

私は古いUNIXユーザーですが、ACLについてはよくわかりません。ビットマスク、chmod冷たい手から引き出すなど

答え1

0 1 2は評価順に沿ったACEであり、その後のルールは人が読むことができると思います。

しかし、これはRTFMの答えであり、acl形式は次のとおりです。man lsOS Xでは。

ACLの設定はchmodOSX経由で行われます。man chmod(ACL形式も説明されています)。

関連情報