NIS+ドメインを nisplus.domain とする
nisls org_dir
niscat -o passwd.org_dir でテーブルの項目(name,uid,gid等)を確認する
auto_homeを追加したいときは auto_home.org_dir. 項目として key, value があることがわかる
> niscat -o passwd.org_dir
構文は次の通りである
nistbladm -a(追加) [項目名]=[値] [対象ファイル].[NIS+ドメイン]
具体的に passwdテーブルに値を追加したいときは次のようになる
nistbladm -a name=[アカウント名] uid=[ユーザID] gid=[グループID] gcos=[フルネーム] home=[ホームディレクトリ] shell=[シェル] passwd.org_dir.nisplus.domain.
となる.次に例を示す.
> su # nistbladm -a name=hoge uid=500 gid=100 gcos="Hogeo HOGE" home=/home/hoge shell=/usr/local/bin/tcsh passwd.org_dir.nisplus.domain.
nistbladm -m(修正) (修正する項目)=(修正後の値) '[(キー項目)=(値)]'(修正対象ファイル)
キー項目のところは修正前も修正後も変化しないで,欄を特定できるものにする
修正後の項目は修正前と同じものももう一度書く必要がある
例えば テーブル名が group で,name=MBL のエントリに,元々 hoge0が登録されており
hoge と hoge2 を追加修正する場合は次のようになる
# nistbladm -m members=hoge,hoge2,hoge0 '[name=MBL]'group.org_dir
nistbladm -r(1消去) (キー項目)=(値) (テーブル名)
nistbladm -R(複数消去) (キー項目)=(値) (テーブル名)
例 : passwdからhogeを消す(-r) # nistbladm -r name=hoge passwd.org_dir 例 : passwdからgid=100の人を全員消す(-R) # nistbladm -R gid=100 passwd.org_dir
ドメイン名の最後に . (ピリオド)が入っていることに注意
という手順である.次に例を示す.
> su # nisaddcred -p 500 -P hoge.nisplus.domain. local # nisaddcred -p unix.500@nisplus.domain -P hoge.nisplus.domain. des [ネットワークパスワードを決めて入力] # nispasswd hoge [新パスワードを決めて入力] # su hoge (本人の環境) > keylogin [ネットワークパスワード] > chkey -p [ネットワークパスワード] [新パスワード]
その時のNIS+のテーブル内容をファイルに残す(今後,nispopulateするときの基準に指定する)
nisaddent -d テーブル名 > 出力先
# /usr/lib/nis/nisaddent -d passwd > /etc/nisplus/passwd # /usr/lib/nis/nisaddent -d shadow > /etc/nisplus/shadow
ここで作成したファイルは,ファイル内容そのままのNIS+テーブルを作る場合に使う
(NIS+テーブルの中身がない状態から作る場合など)
# /usr/lib/nis/nispopulate -u -F -p /etc/nisplus -v passwd # /usr/lib/nis/nispopulate -u -F -p /etc/nisplus -v shadow # /usr/lib/nis/nispopulate -u -F -p /etc/nisplus -v auto_home
ここで /etc/nisplus はそれぞれのファイル(passwd,etc.)があるディレクトリ名