NIS+Autofs
一、概述
1、相關服務:ypserv(NIS伺服器端),ypbind(NIS用戶端),yppasswdd(修改密碼時,NIS用戶端與NIS伺服器端之前通過這個服務來通信)
2、相關端口:portmap :111,因為NIS、NFS 都是依賴于portmap服務
3、相關包:ypserv(NIS伺服器必需的),ypbind(NIS用戶端必需的,預設已安裝),yp-tools(NIS的常用工具,預設已安裝)
4、實驗環境:NIS域:notexample
NIS+NFS server:server1 192.9.210.21
NIS slave server:station2 192.9.210.23
NIS client:station1 192.9.210.22
二、伺服器端配置
1、NFS配置
#vi /etc/exports加入如下行
/home/guests *(rw,sync) --nis client端nis使用者自動挂載家目錄
#/etc/init.d/nfs start
#chkconfig nfs on
2、NIS伺服器端配置
#vi /etc/sysconfig/network加入行
NISDOMAIN notexample
#/etc/init.d/ypserv start ---啟動ypserver服務
#/etc/init.d/portmap start ---nis和nfs都是基于rpc伺服器,必須啟動portmap服務
#vi /var/yp/Makefile --定義主從伺服器的角色
NOPUSH=false --把這裡改成false,雙重否定表示肯定,也就是push,因為是主角色,是以要push到從的
--all: passwd group hosts rpc services netid protocols mail \ --這裡可以選擇要push過去的maps
#usr/lib/yp/ypinit -m --初始化nis資料庫,注每次修改nis密碼等資料庫資訊,都需進入/var/yp/目錄運作make指令,更新nis資料庫
-m:主伺服器
-s 主伺服器IP:表示從主伺服器獲得資料庫更新,可通過cron定義定時更新
#/usr/init.d/ypserv restart --ypserver伺服器重新開機
#/usr/init.d/yppasswdd start --啟動nis密碼管理服務,nis使用者修改使用者相關資訊,需要此服務支援
#/usr/init.d/ypxfred start --啟動Slave(從)NIS伺服器同步資料庫支援服務,支援從NIS伺服器需要此服務
#chkconfig portmap on
#chkconfig ypserv on --開機自啟動
3、NIS從伺服器配置
#vi /etc/sysconfig/network 加入行 ---無論是主從還是客戶機都的加入此行,指定NIS域
NISDOMAIN=notexample
#vi /etc/hosts 加入行
192.9.210.21 server1.example.com
192.9.210.23 station2.example.com
#vi /var/yp/Makefile
NOPUSH=true --确認為true,表示不推送,說明為從伺服器
#/usr/lib/yp/ypinit -s master.cluster.com
--初始化從伺服器,後面接的是主伺服器的主機名(但要寫到/etc/hosts裡),否則就直接寫IP
--主伺服器每對NIS資料庫做一次改變,從伺服器都必須初始化一次将資料庫push過來,同時要運作
#cd /var/yp/&&make 更新自己的資料庫
#/etc/init.d/ypserv start --啟動服務
4、NIS用戶端配置
192.9.210.23 station2.example.com --必須有此行,如果沒有設定DNS服務則需要設定/etc/hosts檔案指向主NIS伺服器nis,否則會找不到主NIS伺服器
#vi /etc/yp.conf 加入行
domain notexample server 192.9.210.21 --指定NIS域名及域伺服器
domain notexample server 192.9.210.23 --當上一個NIS域伺服器失效是就由此伺服器解析
#vi /etc/nsswich.conf 修改 --指定名稱解析先本地files解析,如本地無則有nis解析
passwd: files nis nisslave
shadow: files nis nisslave
group: files nis nisslave
hosts: files nis nisslave dns
#vi /etc/sysconfig/network 加入行 --加入到notexample域
NISDOMAIN notexample
#/etc/init.d/ypbind start --此服務有用戶端與服務端通信服務,必須開啟
#chkconfig ypbind on
#reboot --重新開機使/etc/sysconfig/network内加入到域生效
或
#domainname notexample --臨時指定域
#ypbind --加入到指定域中,重新開機失效
# yptest
# ypwhich --單純使用 ypwhich 的時候顯示的是『NIS Client 的 domain』名稱
# ypwhich -x 加入 -x 這個參數時則是顯示『NIS Client 與 Server 之間溝通的資料庫有哪些?』
# ypcat -x 主要的功能就是『列出資料庫』 與 ypwhich -x 相同功能
# ypcat [資料庫名稱或功能] 這個指令可以用來取得 NIS Server 上面各個資料庫的内容
# ypcat passwd 舉例來說,我們想要知道 passwd ( 密碼資料 ) 的所有使用者内容就需要使用這條指令
# yppasswd --在NISClient端修改各個賬号的密碼,不太建議大家使用這些指令去修改資料庫的内容!建議登入到 NIS Server 主機裡面去,進行 useradd 或者是passwd 修改賬号與密碼等等; 使用 /usr/lib/yp/ypinit -m 重新制作資料庫檔案或cd /var/yp&&make更新資料庫
5、用戶端配置Autofs
#vi /etc/auto.master 加入行
/home/guests auto.guests
--主配置檔案auto.master,格式:挂載點(/home/guests) 比對的從配置檔案(auto.guests)
--挂載點:用戶端要将NFS伺服器挂載到本地的路徑
--從配置檔案:用戶端與本地挂載路徑比對的檔案
--主、從配置檔案必須是auto.開頭的檔案
#vi /etc/auto.guests
* -rw,soft,intr 192.9.210.21:/home/guests/&
--從配置檔案格式:挂載中的目錄 參數 伺服器共享路徑
--*:挂載點/home/guests/下的任何目錄
--&:多用于NIS中,表挂載點下比對的目錄名eg:guest2001
#service autofs start
#su - guest2001 --guest2001使用者為本地/etc/passwd中無nis伺服器中有的帳号
--如能切換到/home/guests/guest2001/中切為報錯則autofs配置正确
本文轉自netsword 51CTO部落格,原文連結:http://blog.51cto.com/netsword/554831