ACL権限は、不思議なことにグループ実行権限を付与します。

ACL権限は、不思議なことにグループ実行権限を付与します。

次のようにしましたが、最終結果を理解していません。

$ mkdir mydir
$ setfacl -d -m u::rwX,g::rwX,o::rX,m::rwx mydir
$ touch mydir/test.txt
$ getfacl mydir/test.txt
# file: mydir/test.txt
# owner: ubuntu
# group: ubuntu
user::rw-
group::rwx          #effective:rw-
mask::rw-
other::r--

$ setfacl -m g::rwX mydir/test.txt
$ getfacl mydir/test.txt
# file: mydir/test.txt
# owner: ubuntu
# group: ubuntu
user::rw-
group::rwx
mask::rwx
other::r--

したがって、私が予想する状況は次のとおりです。

  1. ディレクトリを作成し、そのディレクトリに新しく作成されたファイルのデフォルト値を設定します。 (ディレクトリの場合、「X」は実行可能で、すでに実行可能な場合は通常のファイルに対してのみ実行可能です。)
  2. touch「rw-rw-r--」権限と「rwx」マスクを使用して新しいファイルを作成します。
  3. setfacl -m g::rwX mydir/test.txtファイルにマスクが「rwx」の「rw-」グループがすでに存在している必要があるため、何もしないでください。

実際に起こっていることは次のとおりです。

  1. レポート用に生成されたデフォルトディレクトリは次のとおりです。
    default:user::rwx
    default:group::rwx
    default:mask::rwx
    default:other::r-x
  1. touch「rw-rw-r--」というファイルを作成してください。lsただし、getfacl表示されるグループ権限は実際には「rwx」です。マスクはデフォルトの「rwx」ではなく「rw-」なので、「rw-」でマスクされます。
  2. test.txtはすでに「rwx」グループであるため、グループsetfacl -m g::rwX mydir/test.txt権限は変更されませんが、マスクが「rwx」として再計算され、グループに対する「x」権限が表示されますls

ディレクトリのデフォルトマスクが新しいファイルに適用されないのはなぜですか?新しいファイルのグループ権限に実行ビットが含まれるのはなぜですか?

これはgetfaclmydirにあります:

# file: mydir
# owner: ubuntu
# group: ubuntu
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:mask::rwx
default:other::r-x

getfaclデフォルト設定に「X」(大文字)が含まれておらず、「x」のみが表示されるのはなぜですか?

ベストアンサー1

おすすめ記事