web-dev-qa-db-ja.com

存在しないユーザーがファイルを所有することは問題ありませんか?

NFSを介してサーバーBおよびCと共有されるマウントされたボリュームを持つサーバーAがあります。

サーバーAにのみ存在するグループYのユーザーXを使用してそのボリュームにファイルを作成すると、NFSを介したそのファイルの共有に問題が発生しますか?サーバーBとサーバーCは、読み取りを含むサードパーティの権限があれば、ファイルを読み取ることができますか?

9
user1471465

はい、大丈夫です。

UNIXは本当に名前を気にしません。ファイルのアクセス許可の場合、重要なのは数値です。ファイルにアクセスしようとすると、UIDが一致するかどうか、GIDが一致するかどうかが確認され、「その他」の権限が使用されます。 「その他」の権限に読み取りが含まれている限り、それらのファイルを読み取ることができます。

ユーザー名とグループ名を表示するlsなどを実行している場合を除いて、その番号にユーザーまたはグループが存在するかどうかは確認されません(この場合、番号のみが表示されます)。

私のホームサーバーには、他のどのマシンにも存在しない多くのUIDとGIDがあります。 NFSはそれをうまく処理します。 FreeBSDサーバー、OpenBSDおよびLinuxクライアント。

6
Jeff Spaulding

存在しないユーザーがファイルを所有していても、すぐに問題が発生することはありません。カーネルに関する限り、ユーザーが存在するという概念はなく、数値のユーザーIDのみが存在します。より高いレベルに関する限り、特定のユーザーIDにはユーザー名が関連付けられていない場合があります。これは珍しいことですが、それ自体に問題はありません。

存在しないユーザーが所有するファイルのリスクは、アカウントを作成すると、そのユーザーIDが取得される可能性があることです。そのIDによるアカウントがないため、IDは無料です。そのユーザーIDを持つファイルが存在するという事実はこれに影響しません。 (ファイルが、現在マウントされていないリムーバブルドライブまたはネットワークファイルシステムにある場合はどうなりますか?OSはこれを行う方法がありません。)

分散設定では、これで問題ありません。 AのNFS共有でファイルを所有していないユーザーを除き、既存のユーザーとの競合を避けるために、サーバーBとCはサーバーAと同じユーザーID範囲を使用しないように構成する必要があります。