Linux 共有 FTP: 1 つのファイルを削除してはいけません

Linux 共有 FTP: 1 つのファイルを削除してはいけません

2 人のユーザー:

A1:x:1001:1002::/home/A1:/bin/sh
A2:x:1002:1002::/home/A1:/bin/sh

1つのグループ:

A1:x:1002:

FTP サーバー: ProFTPd を新規インストール OS: Ubuntu Server 12.04 を新規インストール

A1 と A2 で共有したいフォルダー (/home/A1):

/home/A1: A1:A1 rwxrwxr-x
/home/A1/B1.txt: A1:A1 rw-rw-r--
/home/A2/B2.txt: A1:A1 rw-r--r--

私が欲しいもの:

  • B1.txt は A1 と A2 によって変更可能
  • B1.txt は A1 によって変更可能ですが、A2 によって変更できないため、A2 は読み取りのみ可能です。

今 FTP に接続すると、A2 は何でも変更できますが、これはよくわかりません。/home/A1 からグループ書き込み権限を削除すると (つまり rwxr-xr-x)、A2 は何も変更できなくなります。

何が間違っているのでしょうか?

答え1

ファイルのアップロードは、既存のファイルを上書きするのではなく、新しい一時ファイルを作成して所定の場所に移動することによって行われます。これは、ファイルの上書き中に接続が失われた場合、不完全なファイルが残ってしまうためです。

新しいファイルのアップロード、既存のファイルの削除、既存ファイルの新しいバージョンのアップロードには、ディレクトリへの書き込みアクセスのみが必要です。既存ファイルの権限は関係ありません。したがって、A2 は同様に変更B1.txtおよび実行できますB2.txt

これら 2 つのファイルを更新するために異なる権限が必要な場合は、異なる権限を持つ異なるディレクトリに配置します。

2 つのファイルを同じディレクトリで使用できるようにする必要がある場合は、A2 が書き込み権限を持つディレクトリへB1.txtのシンボリック リンクを作成します。writable-by-A2/B1.txtwritable-by-A2

答え2

どのようなエラーメッセージが表示されていますか?

エラーが「上書き権限が拒否されました」の場合は、上書きを有効にする必要があります。proftpd.confデフォルトでは無効になっています。

これを行うには、以下を追加します。

AllowOverwrite yes

セクション (これにより、<Global>ファイル権限で許可されている場所であればどこでも上書きが可能になります) またはセクション<Directory /home/A1>(これにより、そのディレクトリ内でのみ、ファイル権限で許可されている場合にのみ上書きが可能になります) のいずれかに追加します。

これがエラー メッセージではない場合は、質問に詳細を追加してください。少なくともエラー メッセージ、できればログの抜粋を追加してください。

関連情報