EN JA
YPSERV(8)
YPSERV(8) YPSERV(8)

名前

ypxfr - NIS データーベースをリモートサーバーからローカルホストに転送する

書式

/usr/lib/yp/ypxfr [ -f ] [ -c ] [ -d target domain ] [ -h source host ] [ -s source domain ] [ -C taskid program-number ipaddr port ] [ -p yp_path ] mapname ...
 

説明

ypxfr は NIS データーベースを NIS サーバーからローカルホストに NIS サービスを用いてコピーする。 ypxfr は通常 ypinit から起動されるか、 yppush からマップ転送要求を受け取った ypserv によって起動される。 ypxfr は一時的なマップを /var/yp/domain ディレクトリに生成し (このディレクトリは存在していなければならない。 domain はローカルホストのデフォルトドメイン名である)、そのマップのエントリを取得して内容を書き込み、マップのパラメータ (マスターとオーダー番号) を取得する。転送が成功したら、古いバージョンのマップは削除され、この一時的なマップの内容がそこに書き込まれる。次に ypxfr は "clear current map"要求をローカルの ypserv に送ろうと試みる。
 
インタラクティブな形式で実行されると、 ypxfr は出力を標準エラー出力に書き出す。しかし制御端末なしで起動された場合には、出力は syslog に記録される。
 
ypxfr が用いられるのは、複数の NIS サーバーが用いられているような環境においてである。あらゆるマップに対して、そのマップの原本を保持している NIS マスターサーバーが一つだけ存在する。他のサーバはすべて NIS スレーブサーバーとなり、マスターサーバーでマップが更新されるたびに、新しい版のマップをコピーする。通常は一台の NIS サーバーにすべてのマップの管理を集中させる。
 
これらすべての NIS サーバーの間でマップの内容を一致させておくためには、 ypxfrcron ジョブとして定期的に動作させると良い。あまり変更されないマップは一日に一回更新すればよいだろうし (システムの使用率が最低となるような夜遅くが好まれる)、頻繁に変更されるマップ ( passwd.bynamepasswd.byuid など) は一時間に一回くらい更新する必要があるかもしれない。これらの例は /usr/lib/ypypxfr_1perday, ypxfr_2perday, ypxfr_1perhour などに示してある。とりあえず動かしてみるには、これらを用いてみると良いだろう。
 
NIS マスターサーバーで /var/yp/Makefile が実行されたら、通常はその更新内容を yppush を用いて伝播させるべきである。しかし大きなネットワークの場合には、通信障害などによって NIS スレーブの同期がマスターとずれることもあるだろうから、このように ypxfr を使うのは良いことである。
 
 

オプション

以下のオプションがサポートされている。
-f
マップの転送を強制する。通常の動作では、 NIS マスターにあるマップがローカルホストにすでに存在するコピーよりも新しくないと判断されると、 ypxfr はマップの転送を行わない。このフラグを指定すると、どのサーバーの版が最新であるかを問わず、強制的に転送が行われる。
-c
ローカルで動作している ypserv プロセスに "clear current map"要求を送らない。 ypxfrypinit から起動された場合や、 ypxfr の起動時に ypserv が動作していない場合などには通常このフラグを指定する。さもないと ypxfr はローカルの ypserv と通信できない旨のエラーを出し、転送は失敗する。
-d domain
デフォルトの NIS ドメインの代わりに用いるドメインを指定する。
-h source host
マップに書かれているマスターの情報を無視して、マップを host から取得する。 host が指定されない場合には、 ypxfrNIS サービスにマスターの名前を問い合わせて、そこからマップを取得しようとする。このオプションは ypxfr がマップの取得先とする NIS マスターサーバーを保証するために用いられる。
-s source domain
マップの取得先とするソースドメインを指定する。そのマップをドメインを通して同じものとしたい場合に有効。
-C taskid progam-number ipaddr port
このオプションは ypserv によって のみ用いられる。 ypservypxfr を起動するときに、 ypxfryppush プロセスをコールバックする先 ( IP アドレス ipaddr のホストの、予約済みプログラム番号 progam-number、ポート番号 port が、トランザクション taskid へのレスポンスを待っている) を指定する。
-p yp_path
マップのディレクトリを yp_path/[domainname] に変更する。デフォルトは /var/yp/[domainname] である。
mapname
転送するマップの名前を指定する (複数指定可)。

ファイル

/var/yp/[domainname]/[maps]

関連項目

ypserv(8), yppush(8), ypinit(8), cron(8), crontab(5)

作者

Thorsten Kukuk <kukuk@suse.de>
August 2001 YP Server