Unix:ファイルを書き込み可能ですが、削除不可、移動可能、コピー不可能にする方法はありますか?

Unix:ファイルを書き込み可能ですが、削除不可、移動可能、コピー不可能にする方法はありますか?

複数の人がアクセスできる「生きているファイル」があります。ファイルの読み取りと書き込みのみを可能にし、移動、コピー、または削除を無効にする方法はUnixにありますか?

これの目的は、ネットワークにファイルのコピーが1つだけあるようにすることです。

答え1

ファイルとファイルを含むディレクトリ(親ディレクトリ)がまったく別のユーザーが所有し、フェデレーショングループに属しているとします。

グループがファイルの親ディレクトリを書き込めない場合、グループメンバーはファイルを削除できません。グループメンバーがファイルを削除できないように設定すると、グループメンバーが親ディレクトリからファイルを移動できないようにすることができます。

ファイルを読み取ることができません。そしてファイルを読み取ると、本質的にユーザーはファイルをコピーできるため、コピーできません。

「その他」にはファイルまたは親ディレクトリに対する権限がありません。


git理想的には、人々が制御された方法でファイルに対して共同作業を実行できるシステムの種類(おそらくサポートされている)を使用することです。これにより、アクセス制御、リモートアクセス、リビジョン制御が容易になります。

答え2

Solaris(ZFS)では、以下を呼び出すことができます。

chmod S+cu file

FreeBSD では、以下を呼び出すことができます。

chflags sunlink file

Linuxでは、以下を呼び出すことができます。

chattr +u file

すべての場合にフラグを設定するには、スーパーユーザーでなければなりません。

Linuxはext *ファイルシステムではこの機能をサポートしていません。

関連情報