2人のユーザーAliceとBob、グループGROUPNAMEとフォルダーfoo
があるとします。 、両方のユーザーはGROUPNAMEのメンバーです(Linuxとext3を使用)。
foo
の下にファイルをユーザーAliceとして保存すると 、権限は次のとおりです。-rw-r--r-- Alice Alice
。ただし、foo
のサブディレクトリに保存されているすべてのファイルを実現することは可能ですか。 権限があります-rwxrwx--- Alice GROUPNAME
(つまり、所有者のアリス、グループGROUPNAME)?
承認された回答:
umask
を使用して、割り当てられた許可ビットを制御できます。 、およびディレクトリ setgidを作成することによるグループ GROUPNAME
へ 。
$ umask 002 # allow group write; everyone must do this
$ chgrp GROUPNAME . # set directory group to GROUPNAME
$ chmod g+s . # files created in directory will be in group GROUPNAME
chgrp
を実行する必要があることに注意してください / chmod
すべてのサブディレクトリに対して。自動的には伝播されません(つまり、 setgidの下に既存のディレクトリもその後に作成されたディレクトリもありません ディレクトリはsetgidになります 、後者はグループGROUPNAME
に含まれますが 。
umask
にも注意してください はプロセス属性であり、そのプロセスとその子(umask
を継承する)によって作成されたすべてのファイルに適用されます fork()
で親に有効 時間)。ユーザーはこれを~/.profile
で設定する必要があるかもしれません 、および異なる権限を必要とするディレクトリに関係のないものに注意する必要がある場合があります。モジュールは、さまざまなことを行うときにさまざまな設定が必要な場合に役立つことがあります。
POSIX ACLを使用できる場合は、物事を少しうまく制御できます。パーミッションマスクとグループの両方を指定し、それらを適切に伝播させることが可能である必要があります。ただし、POSIXACLのサポートは多少異なります。