next up previous contents
Next: 3.10.2 うまく bind されない場合 Up: 3.10 トラブルシュート Previous: 3.10 トラブルシュート

3.10.1 マップ変更が失敗した場合

/var/yp の下での make は、/etc からファイルを生成し、makedbm コマンドで データベースへ変換、最後にスレーブ・サーバーへ yppush コマンドを使って データを転送します。しかし、ネットワークの不調などの理由で転送が失敗した 場合には、ネットワークの回復後再び該当ホストへデータを転送しなければなり ません。このような場合、単に make だけではうまく行きません。何故ならば、 make コマンドは、元になるファイル(今の場合 /etc/hosts など) と生成する ファイルの時刻を比べ、元になるファイルが新しい場合にのみコマンドを実行する からです。従って、厳密には yppush コマンドを使って送るべきですが、 手早く行いたい場合には touch コマンドを使って、元ファイルの時刻を現在時刻 に変更すれば make が通るようになります。

しかし、まれにこれでも駄目な場合があります。それは、スレーブ側のデータファイル がマスター側よりも新しい場合です。何等かの原因で時刻が狂ってしまった場合、 転送されない場合があります。この場合には、スレーブ側で ypxfr コマンドに -f オプションをつけて強制転送を行う事で解消するでしょう。 ypxfr コマンドの詳細な使い方については、man で参照してください。



Noriyo Kanayama