この付録では,ypservers
マップを更新するための次のスクリプトについて説明します。
addypserver
-- スレーブ・サーバの追加
rmypserver
-- スレーブ・サーバの削除
NIS マスタ・サーバで
addypserver
スクリプトを作成するには,次の手順に従ってください。
/var/yp
ディレクトリに
addypserver
ファイルを作成し,次に示す行を挿入します。
#!/bin/sh PATH="/usr/bin:/var/yp:$PATH" if [ $# != 1 ]; then echo "usage: $0 server"; exit 1 fi DOMAIN=`/usr/sbin/rcmgr get NIS_DOMAIN` METHOD=`/usr/sbin/rcmgr get NIS_SERVERARGS d` cd /var/yp echo " Adding $1 to ypservers map for domain DOMAIN ..." (/var/yp/makedbm -a $METHOD -u $DOMAIN/ypservers;\ echo $1 $1) | /var/yp/makedbm -a $METHOD $DOMAIN/ypservers /var/yp/yppush ypservers
chmod
コマンドを使用して,許可を 700 に設定します。
# chmod 700 /var/yp/addypserver
ypservers
マップに
host1
を追加するには,次のコマンドを入力します。
# /var/yp/addypserver host1
NIS マスタ・サーバの
hosts
ソース・ファイルにまだスレーブ・サーバのエントリがない場合は,hosts
ファイルを編集してエントリを追加してください。
次に,make
コマンドを入力して
hosts
マップを更新して配布します。
詳細については,3.4.1 項を参照してください。
B.2 スレーブ・サーバ削除用スクリプト
NIS マスタ・サーバに
rmypserver
スクリプトを作成するには,次の手順に従ってください。
/var/yp
ディレクトリに
rmypserver
ファイルを作成し,次に示す行を挿入します。
#!/bin/sh PATH="/usr/bin:/var/yp:$PATH" if [ $# != 1 ]; then echo "usage: $0 server"; exit 1 fi DOMAIN=`/usr/sbin/rcmgr get NIS_DOMAIN` METHOD=`/usr/sbin/rcmgr get NIS_SERVERARGS d` cd /var/yp echo " Removing $1 from ypservers map for domain DOMAIN ..." /var/yp/makedbm -a $METHOD -u $DOMAIN/ypservers | grep -v "^$1 " \ | /var/yp/makedbm -a $METHOD $DOMAIN/ypservers /var/yp/yppush ypservers
chmod
コマンドを使用して,許可を 700 に設定します。
# chmod 700 /var/yp/rmypserver
ypservers
マップから
host1
を削除するには,次のコマンドを入力します。
# /var/yp/rmypserver host1
NIS マスタ・サーバの
hosts
ソース・ファイルを編集してスレーブ・サーバのエントリを削除する必要があります。
その後に,make
コマンドを入力して
hosts
マップを更新して配付します。
詳細は
3.4.2 項
を参照してください。