次の質問があります。 Unixサーバー(CentOS 5.5)では、同じグループに属する複数のユーザーがSSHを介して同じファイルにアクセスできます。特定のユーザー(ユーザーAと仮定)がファイルを編集した後、ファイル所有者はAに変更され、グループ(G)と権限(0664)は同じままです。 2番目のユーザー(B)が同じファイルを変更しようとすると、そのユーザーはそうすることはできません。一方、ユーザーBがファイルを変更すると、ユーザーAは問題なくファイルを変更できます(権限を台無しにすることを除く)。
権限/グループに問題があることを知っていますが、何がわかりません。よって、どんな助けでも大変感謝いたします。
追加情報を提供する:
$ ls -l /path/file
-rwxrwxr-x 1 B G 42269 jan 14 10:30 file
$ getfacl /path/file
# file: file
# owner: B
# group: G
user::rwx
group::rwx
other::r-x
$ ls -ld /path
drwxrwxr-x 12 B G 4096 jan 14 10:24 .
$ getfacl /path
# file: .
# owner: B
# group: G
user::rwx
group::rwx
other::r-x
答え1
Aにはそのディレクトリに書き込む権限があるため、Aの編集者は新しいファイル/path/file.tmp
(または同様の名前)を作成してから新しいファイルをに移動します/path/file
。 Aがファイルを作成したばかりのファイルはAの所有です。
Bにはディレクトリに書き込む権限がないため、Bの編集者は所有権を変更しない既存のファイルを上書きします。
(望むよりファイルを編集してACL / SELinuxセキュリティコンテキストを維持する方法は?編集者がこれを行う理由を学びます。 )
AはGグループに属しているように見えますが、Bはそうではありません。この問題を解決する最も簡単な方法は、AとBがグループGに属しているか、どちらもグループGに属していないことです。