回答:
chmod()
システムコール、および拡張によりchmod
プログラムは、ファイルやディレクトリのグループには影響しません(またはファイルの他のタイプ:ブロックの特殊文字の特別な、ソケット、...シンボリックリンクは特殊なケースのようなものです)。そのため、許可が与えられるグループは、ファイルまたはディレクトリが属するグループになります。
グループのrwx
アクセス許可を追加するには、次を使用する必要があります。
chmod -R g+rwx DirectoryName
ただし、これにより、すべてのファイルとすべてのディレクトリにアクセス許可が追加され、すべてのファイルが実行可能になるわけではありません。個人的には、誰かが私のディレクトリのすべて(またはいずれか)にグループ書き込み許可を与えた場合、非常に不幸になりますが、それは別の話です。
ディレクトリのみに影響を与えるには、find
代わりに次を使用します。
find DirectoryName -type d -exec chmod g+rwx {} +
(+
表記はPOSIX 2008です。Linuxはサポートしていますが、すべてのUnixシステムがサポートしているわけではありません。)
extファイルシステム上のすべてのファイルには次のものがあります。
ファイルにrwxグループのアクセス許可を設定している場合、そのファイルの所有者グループのみが読み取り/書き込み/実行できます。ただし、次の方法でユーザーと所有者を変更できます。
chown username file1 file2 ...
chown -R username somedir
chgrp groupname file1 file2 ....
chgrp -R groupname somedir
chown username:groupname file1 file2 ...
拡張ファイルシステム特権にはさまざまな実装、つまりMac OS XのACL(アクセス制御リスト)がありますが、Linuxの専門家ではないので、おそらくサーバーフォールトで問い合わせてください。