- 论坛徽章:
- 0
|
配一个主控服务器
step1.将/var/yp目录增加到root的path变量中,这个目录中包含有ypmake命令以更新映射。
如:#vi /etc/profile
添加:export PATH=$PATH:/var/yp
step2.收集那些用于创建映射的ASCII源文件,这些文件应该是最新的
step3.手工设域名
root@nbeuxap:/ # cd /etc/rc.config.d
root@nbeuxap:/etc/rc.config.d # vi namesvrs
修改文件:
NIS_MASTER_SERVER=1 說明該主機作為NIS主server
#NIS_MASTER_SERVER=0
NIS_SLAVE_SERVER=0
NIS_CLIENT=1 除了可以作為主server還可以作為備援主機
#NIS_CLIENT=0
NISPLUS_SERVER=0
NISPLUS_CLIENT=0
NIS_DOMAIN=nbenis
MAX_NISCHECKS=2
EMULYP=\"\"
YPSERV_OPTIONS=\"-l /var/yp/ypserv.log\" log日誌路徑
YPBIND_OPTIONS=\"-l /var/yp/ypbind.log\"
#domainname nbenis
或是#/usr/bin/domainname nbenis
step4. 编辑/etc/ nsswitch.conf文件
root@nbeuxap:/etc # cp nsswitch.nis nsswitch.conf
修改文件為:
passwd: files nis
group: files nis
hosts: files nis [NOTFOUND=return]
networks: nis [NOTFOUND=return] files
protocols: nis [NOTFOUND=return] files
rpc: nis [NOTFOUND=return] files
publickey: nis [NOTFOUND=return] files
netgroup: nis [NOTFOUND=return] files
automount: files nis
aliases: files nis
services: files nis
step5.建立并安装数据库
#ypinit –m
Do you want this procedure to quit on non-fatal errors? [y/n: n] n
and its contents be destroyed? [y/n: n] y
next host to add: ctrl+d繼續
Is this correct? [y/n: y] y
step6.啟動服務
# /sbin/init.d/nis.server stop
# /sbin/init.d/nis.server start
# /sbin/init.d/nis.client stop
# /sbin/init.d/nis.client start
察看網絡端口是否打開:
root@nbeuxap:/etc # rpcinfo -p
確認有以下內容
100000 2 tcp 111 rpcbind
100000 4 udp 111 rpcbind
100004 2 udp 774 ypserv
100004 2 tcp 775 ypserv
100004 1 udp 774 ypserv
100004 1 tcp 775 ypserv
100069 1 udp 782 ypxfrd
100069 1 tcp 783 ypxfrd
100009 1 udp 1022 yppasswdd
100028 1 tcp 796 ypupdated
100028 1 udp 797 ypupdated
100007 2 tcp 56347 ypbind
100007 2 udp 54800 ypbind
100007 1 tcp 56347 ypbind
100007 1 udp 54800 ypbind
step7.驗證:
root@nbeuxap:/etc # ypcat -x
Use \"passwd\" for map \"passwd.byname\"
Use \"group\" for map \"group.byname\"
Use \"networks\" for map \"networks.byaddr\"
Use \"hosts\" for map \"hosts.byaddr\"
Use \"protocols\" for map \"protocols.bynumber\"
Use \"services\" for map \"services.byname\"
Use \"aliases\" for map \"mail.aliases\"
Use \"ethers\" for map \"ethers.byname\"
5.8.2 配一个NIS的客户机
step1.将/var/yp目录增加到root的path变量中,这个目录中包含有ypmake命令以更新映射。
如:#vi /etc/profile
添加:export PATH=$PATH:/var/yp
step2.手工设域名
root@nbeuxap:/ # cd /etc/rc.config.d
root@nbeuxap:/etc/rc.config.d # vi namesvrs
修改文件:
NIS_MASTER_SERVER=0
#NIS_MASTER_SERVER=0
NIS_SLAVE_SERVER=1 說明該主機作為NIS從server
NIS_CLIENT=1 除了可以作為從server還可以作為主server
#NIS_CLIENT=0
NISPLUS_SERVER=0
NISPLUS_CLIENT=0
NIS_DOMAIN=nbenis
MAX_NISCHECKS=2
EMULYP=\"\"
YPSERV_OPTIONS=\"-l /var/yp/ypserv.log\" log日誌路徑
YPBIND_OPTIONS=\"-l /var/yp/ypbind.log\"
#domainname nbenis
或是#/usr/bin/domainname nbenis
step3. 编辑/etc/ nsswitch.conf文件
root@nbeuxap:/etc # cp nsswitch.nis nsswitch.conf
修改文件為:
passwd: files nis 該格式說明是先讀本地passwd文件還是先讀NIS庫文件
group: files nis
hosts: files [NOTFOUND=continue] dns nis
#networks: files [NOTFOUND=return] dns
networks: files [NOTFOUND=continue] dns
protocols: files [NOTFOUND=return] dns
rpc: files [NOTFOUND=return] dns
publickey: files [NOTFOUND=return] dns
netgroup: files [NOTFOUND=return] dns
automount: files dns
services: files [NOTFOUND=return] dns
step4. 修改passwd文件
#vi /etc/passwd
在最後一行加入:
+::-2:60001:::
也可以寫為:
+::-2:-2:::
step5. 啟動服務
# /sbin/init.d/nis.server stop
# /sbin/init.d/nis.server start
# /sbin/init.d/nis.client stop
# /sbin/init.d/nis.client start
Step6.同步資料庫
#ypinit –s nbenis
Do you want this procedure to quit on non-fatal errors? [y/n: n] n
and its contents be destroyed? [y/n: n] y
察看網絡端口是否打開:
root@nbeuxap:/etc # rpcinfo -p
確認有以下內容
100000 2 tcp 111 rpcbind
100000 4 udp 111 rpcbind
100004 2 udp 774 ypserv
100004 2 tcp 775 ypserv
100004 1 udp 774 ypserv
100004 1 tcp 775 ypserv
100069 1 udp 782 ypxfrd
100069 1 tcp 783 ypxfrd
100009 1 udp 1022 yppasswdd
100028 1 tcp 796 ypupdated
100028 1 udp 797 ypupdated
100007 2 tcp 56347 ypbind
100007 2 udp 54800 ypbind
100007 1 tcp 56347 ypbind
100007 1 udp 54800 ypbind
step7.驗證:
root@nbeuxap:/etc # ypcat -x
Use \"passwd\" for map \"passwd.byname\"
Use \"group\" for map \"group.byname\"
Use \"networks\" for map \"networks.byaddr\"
Use \"hosts\" for map \"hosts.byaddr\"
Use \"protocols\" for map \"protocols.bynumber\"
Use \"services\" for map \"services.byname\"
Use \"aliases\" for map \"mail.aliases\"
Use \"ethers\" for map \"ethers.byname\"
NIS維護命令
(1)#yptest
會有很多的資料一項一項的去測試,測試的結果都會顯示在螢幕上面,最好都沒有問題之後再開始 NIS Client 的服務
(2)# ypwhich -x
單純使用 ypwhich 的時候顯示的是『NIS Client 的 domain』名稱,而當加入 -x 這個參數時,則是顯示『NIS Client 與 Server 之間溝通的資料庫有哪些
這些資料庫檔案則是放置在我的 NIS Server 的 /var/yp/cluster/* 裡面
(3)# ypcat
[root @client root]# ypcat -x
Use \"ethers\"for map \"ethers.byname\"
Use \"aliases\" for map \"mail.aliases\"
Use \"services\" for map \"services.byname\"
Use \"protocols\" for map \"protocols.bynumber\"
Use \"hosts\" for map \"hosts.byname\"
Use \"networks\" for map \"networks.byaddr\"
Use \"group\" for map \"group.byname\"
Use \"passwd\" for map \"passwd.byname\"
# 主要的功能就是『列出資料庫』囉!與 ypwhich -x 相同功能!
# 所以我們有 ethers, aliases......passwd 等資料庫名稱與檔名!
[root @client root]# ypcat [資料庫名稱或功能]
# 這個指令可以用來取得 NIS Server 上面各個資料庫的內容!
# 舉例來說,我們想要知道 passwd ( 密碼資料 ) 的所有使用者內容,就需要:
[root @client root]#ypcat passwd(或 ypcat passwd.byname)
test:dkoUW2XHV30sEV5gLM4NapyuhBcpVs.:500:500::/home/test:/bin/bash
# 如果是想要知道 hosts 的內容 (NIS Server 主機上面 /etc/hosts 的內容):
[root @client root]# ypcat hosts
127.0.0.1 localhost localhost.localdomain
192.168.10.30 server.cluster
# 反正就是加上資料庫,你就可以取得 NIS server 主機上面的資料庫內容
[ 本帖最后由 云杉上的蝴蝶 于 2008-9-17 02:43 编辑 ] |
|