小弟的nis網域裡有3台主機:nis.master nis.slave nis.client
在nis.master裡開啟的daemon有:
/etc/init.d/portmap
/etc/init.d/ypserv
/etc/init.d/ypxfrd
/etc/init.d/yppasswdd
在nis.slave裡開啟的daemon有:
/etc/init.d/portmap
/etc/init.d/ypserv
/etc/init.d/yppasswdd
/etc/init.d/ypbind
在nis.client裡開啟的daemon是:
/etc/init.d/portmap
/etc/init.d/ypbind
nis.client的/etc/yp.conf 檔案設定內容為:domain nis broadcast
在nis.master和nis.slave都存在的情況下。client使用NIS來查詢賬戶訊息,並且登錄後,能使用指令yppasswd來更改賬戶密碼
當小弟把nis.master服務器關閉,並重新啟動了nis.client的ypbind daemon。這時候nis.client還是能通過NIS來查詢賬戶訊息,並能夠登錄成功,但是當小弟輸入指令yppasswd後,系統提示:yppasswd: yppasswdd not running on NIS master host ("nis.mater").
下面是client重新啟動ypbind後,使用yptest查詢到的一些參數。
[client:~]#cat yptest
Test 1: domainname
Configured domainname is "nis"
Test 2: ypbind
Used NIS server: nis.slave
Test 6: yp_master
nis.master
請問,如果client要使用yppasswd來修改賬戶密碼,是不是一定要保證nis.master開啟呢?只開啟了nis.slave是不是就不能修改密碼了?如果是這樣的話,請問是為什麼呢?
-------------------
会不会是因為NIS的資料庫都是由master產生的,而slave的資料庫也是來自master的,因此它並不擁有更改資料庫的權力。小弟的理解是否正確呢?