next up previous contents
Next: 3.4 ネットワーク上のデータベース Up: 3. ユーザー登録と NIS Previous: 3.2 NIS とは

3.3 NISが必要な理由

NISの威力は、NISが無い状態のネットワーク管理がいかに大変かを考えてみると よく分かります。ここでは、NIS無しで、ネットワーク上で ユーザー管理をしようとすると、どういう問題を起きるかを考えて見ましょう。

いま、小規模な、ワークステーション5台のネットワークが あったとしましょう。このネットワークで、20人のユーザーが仕事を していると仮定しましょう。 一番単純な管理の方法は、4人に1台のホストを 割り当て、各ホストは4人のユーザーだけの管理をするという方法です。この 方法では、各人がログインできるホストは、割り当てられた一台だけですので、 ネットワークでつながっているといっても、スタンド・アロンのマシンが 5台あるのと変わりはありません。

ネットワーク上のどのマシンでも各人がログイン可能にするためには、 5台のマシンそれぞれに、20人のユーザー登録をすればいいわけです。 要するに、ネットワーク上のどのマシンの /etc/passwd ファイルも 同じ内容をもっていれば、望む環境が得られることになります。

しかし、この方法にも問題があります。もしも、ユーザーが一人増えたと しましょう。ユーザーを一台のマシンにはりつける管理の方法では、 そのマシンで一人分のユーザーを追加登録すればいいだけですが、 この方法では、一人のユーザーの追加のために、5台の /etc/passwd を 書き換えなければなりません。

ネットワークが小規模のうちは、なんとかなるかもしれませんが、 ユーザー登録のたびに、全てのマシンの /etc/passwd を書き換えなければならないというのでは、システム管理者の負担は大変です。 勿論、スクリプト等で自動的にコピーするようにすれば少しは負担は減ります。 その際には、/etc/shadow もコピーするのを忘れないようにしないといけません。 しかし、こうするとユーザーが自分で passwd を変更した場合には、5台のマシン 全てで行うようにしてもらわないといけません。つまり、整合性を如何にして 保つのかという点が問題なのです。

同じ問題が、ホストの追加の場合にも起きてきます。先の5台のネットワークを ワークステーションを1台追加して、6台に拡張する場合を考えて下さい。 新しいホストとネットワーク上で通信するためには、すべてのホストの /etc/hosts ファイル(実際には /etc/inet/hosts です)が更新され、 新しく追加されたホストの ホスト名とIPアドレスの情報が付け加えられなければなりません。 もちろん、新しいホスト上の /etc/hosts も、 同じ情報を含まなければなりません。 これも大規模なネットワークの場合には、大変面倒な仕事になります。



Noriyo Kanayama