すべてのユーザーがディレクトリにファイルを作成できるようにしますが、ファイル所有者だけが自分のファイルを書き込みまたは削除できます。

すべてのユーザーがディレクトリにファイルを作成できるようにしますが、ファイル所有者だけが自分のファイルを書き込みまたは削除できます。

特定のグループに対する書き込み権限が必要な共有ディレクトリを作成したいが、ファイルを作成した所有者だけが自分のファイルに対する書き込み/削除権限を持っている必要があります。

例えば、

mkdir /var/tmp/testdir
chown root:group1 /var/tmp/testdir
chmod 770 /var/tmp/testdir

user1 がディレクトリにファイルを生成した場合

su - user1
touch testfile1

今、私たちは他のユーザーがuser1によって生成されたtestfile1ファイルを変更したくありません。この目標を達成する方法は?

ベストアンサー1

これは「スティッキービート」またはディレクトリの「制限された削除フラグ」(参照man chmod)。

/tmp/これは、すべてのユーザーが自分のファイルを作成、名前変更、削除できますが、他のユーザーに属するファイルは許可されていないディレクトリで使用されます/var/tmp/(ファイル自体を読み取ったり変更したりすることは、ファイルの権限によって異なります)。 。

このファイルの所有者はルートであることに注意してください。そしてディレクトリ所有者は、固定ビットが設定されているディレクトリからファイルを削除したり名前を変更したりできます。ファイルを所有している所有者、ディレクトリを所有しているディレクトリ所有者、ルートなのでルートです。ディレクトリをルートが所有している場合は、ルートとファイルの所有者だけがディレクトリ内のファイルの名前を変更または削除できます。

chmod +t初めて権限を設定するときは、固定ビットを追加するか、4桁の8進数権限コード(+ 1000)を使用できます。例えば

chmod 1770 /var/tmp/testdir

または

chmod +t /var/tmp/testdir

おすすめ記事