john
とsally
という2人のユーザーがいる場合。どちらもusers
グループの一部です。 john
は、権限775
でディレクトリを作成します。次に、sally
は、644
権限を持つファイルをそこに配置します。
ファイルには明らかにグループ書き込み権限がありませんが。 john
は、所有しているディレクトリにあるファイルを変更/削除できますが、所有していないファイルは削除できますか?
リンク解除はファイルではなくディレクトリのアクセス許可に依存するため、彼はファイルを削除できます。このようにして、ディレクトリ内で削除および置換できるため、変更することができます。
はい、ファイルを削除しても実際にはファイルは変更されません。ディレクトリが変更され、johnには変更する権限があります。
この動作を防ぐ方法は、ディレクトリにsticky bit
を設定することです。これが/ tmpで誰もが書き込みを許可する方法ですが、所有者(またはルート)のみが/ tmpから削除できます。
chmod +t directory
スティッキービットがオンになります。