关于此实例中环境的说明:
系统环境为Solaris 9,三台主机nisa、nisb、nisc,nisa做master server,nisb做slave,nisc做client。配置NIS时,选择新建/nis目录,将资源文件与/etc目录中的文件分隔开来,passwd文件可设置到独立的目录以增加安全性,这里不另外设置,也一起放到/nis目录下。配置NFS时,使用的是master主机上挂载的存储资源,挂载点为/netstore。
一、配置master
1)新建/nis目录,用于存放NIS需要的资源文件
# mkdir /nis
2)准备NIS需要的资源文件
NIS需要的资源文件如下,可从/etc目录拷贝到/nis目录下,部分文件/etc目录中没有,需要手动用# touch创建,passwd、group、shadow文件因涉及安全性,不用原/etc目录下的文件:
auto_home
auto_master
bootparams(需要新建)
ethers(需要新建)
group(新建一个group文件,不用原/etc目录下的)
hosts
netgroup(需要新建)
netmasks
networks
passwd(新建一个passwd文件,不用原/etc目录下的)
protocols
publickey
rpc
services
shadow(新建一个shadow文件,不用原/etc目录下的)
timezone(需要新建)
user_attr
3)设置NIS域名为nistest.com
# domainname nistest.com
4)创建/etc目录中的defaultdomain文件,内容为nistest.com
# domainname > /etc/defaultdomain
5)编辑/nis/hosts文件,添加NIS域中的所有主机,再编辑/etc/hosts文件,添加NIS域中提供NIS服务的主机(即master和slave)
# vi /nis/hosts
修改内容如下
192.168.0.10 nisa nisa.nistest.com
192.168.0.11 nisb nisb.nistest.com
192.168.0.12 nisc nisc.nistest.com
# vi /etc/hosts
修改内容如下
192.168.0.11 nisb nisb.nistest.com
6)修改/var/yp/Makefile文件,修改前先备份原文件,以便日后恢复和维护
# cp /var/yp/Makefile /var/yp/Makefile.orig
# vi /var/yp/Makefile
将DIR =/etc改为DIR =/nis;
将PWDIR =/etc改为PWDIR =/nis
7)替换/etc/nsswitch.conf文件,把原先的nsswitch.conf文件备份,然后替换为nsswitch.nis文件的内容
# cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
# cp /etc/nsswitch.nis /etc/nsswitch.conf
8)运行ypinit -m,设置master,初始化NIS环境
# ypinit -m
...
next host to add: nisa
next host to add: nisb
next host to add: ^D(如果有多台slave,继续输入,否则按Ctrl+D结束)
The current list of yp servers looks like this:
nisa
nisb
Is this correct? [y/n: y] y
...
Do you want this procedure to quit on non-fatal errors? [y/n: n] y
...
Can we destroy the existing /var/yp/catnistest.com and its contents? [y/n: n] y
(如果之前设置过NIS,则会有这个提示,如果是第一次设置,不会看到此提示)
...
(ypinit自动调用Makefile,如果没有错误,则会看到如下提示,若有错误返回修改)
nisa has been set up as a yp master server without any errors.
...
9)启动NIS服务守护进程
# /usr/lib/netsvc/yp/ypstart
(停止进程的命令为 # /usr/lib/netsvc/yp/ypsttop)
10)检查master配置状态
# ypwhich -m
(会显示NIS域中所有map的名字以及提供这些map的主机)
以上,配置完了NIS中master的设置,还需要做的是在master上配置NFS资源,实现autoFS自动挂接home目录,建立一个用户testuser测试,步骤如下:
11)编辑/etc/dfs/dfstab文件,将挂载的存储资源/netstore设置为共享
# vi /etc/dfs/dfstab
share -F nfs -o rw -d "home dirs" /netstore
12)编辑/nis/passwd、/nis/group、/nis/shadow文件,增加用户testuser
# vi /nis/passwd
testuser:x:1001:1001::/home/testuser:/bin/bash
(home目录要设置为/home/loginname的形式)
# vi group
testuser::1001:
# vi shadow
testuser::::::::
13)编辑/nis/auto_home文件,设置testuser的自动挂接home目录
# vi /nis/auto_home
删除文件中原来的+auto_home一行,添加如下内容
testuser nisa:/netstore/testuser
14)make三个文件,passwd、group、auto_home
# cd /var/yp
# /usr/ccs/bin/make passwd group auto_home
15)创建用户的home目录,并把权限赋给testuser
# cd /netstore
# mkdir testuser
# chown testuser:testuser testuser
16)设置testuser的密码
# passwd testuser
这样就完成了添加用户并设置自动挂载home目录的操作,以后添加用户重复12至16步的操作即可。
#p#
二、配置slave
1)编辑/etc/hosts文件,添加NIS域中提供NIS服务的主机(即master和slave)
# vi /etc/hosts
添加如下内容
192.168.0.10 nisa nisa.nistest.com
2)配置NIS域名为
# domainname nistest.com
# domainname > /etc/defaultdomain
3)替换/etc/nsswitch.conf文件,先备份,后替换
# cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
# cp /etc/nsswitch.nis /etc/nsswitch.conf
4)运行ypinit -c,将nisb先配置成为客户端机
# ypinit -c
...
next host to add: nisa
next host to add: nisb
next host to add: ^D(Ctrl+D)
The current list of yp servers looks like this:
nisa
nisb
Is this correct? [y/n: y] y
如果配置master时没有将nisb添加进去,在这里会看不到nisb机器,需要到master上重新运行# ypinit -m,添加nisb后再到nisb上运行# ypinit -c。
5)启动NIS服务守护进程
# /usr/lib/netsvc/yp/ypstart
6)检查是否已绑定到nisa上
# ypwhich
nisa
7)运行ypinit -s,将nisb配置为slave
# ypinit -s nisa
...
Do you want this procedure to quit on non-fatal errors? [y/n: n] y
...
(开始传送map文件)
nisb's nis data base has been set up
without any errors.
8)重启NIS服务守护进程
# /usr/lib/netsvc/yp/ypsttop
# /usr/lib/netsvc/yp/ypstart
9)检查slaver状态
# ypwhich -m
(会显示NIS域中所有map的名字以及提供这些map的主机)
# ypcat -k ypservers
nisb
nisa
三、配置client
1)编辑/etc/hosts文件,添加NIS域中提供NIS服务的主机(即master和slave)
# vi /etc/hosts
添加如下内容
192.168.0.10 nisa nisa.nistest.com
192.168.0.11 nisb nisb.nistest.com
2)配置NIS域名为
# domainname nistest.com
# domainname > /etc/defaultdomain
3)替换/etc/nsswitch.conf文件,先备份,后替换
# cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
# cp /etc/nsswitch.nis /etc/nsswitch.conf
4)运行ypinit -c,将nisc配置为client
# ypinit -c
...
next host to add: nisa
next host to add: nisb
next host to add: ^D(Ctrl+D)
The current list of yp servers looks like this:
nisa
nisb
Is this correct? [y/n: y] y
5)启动NIS服务守护进程
# /usr/lib/netsvc/yp/ypstart
6)检查slaver状态
# ypwhich -m
(会显示NIS域中所有map的名字以及提供这些map的主机)
至此,全部配置完毕。这个时候就可以在nisc上用testuser用户登录测试配置是否成功,看看能否实现自动挂接home目录。还可以在nisa(master)上停掉NIS服务(# /usr/lib/netsvc/yp/ypstop),然后在nisc(client)上用testuser登录,测试能否自动切换到nisb(slave)提供NIS服务。
【编辑推荐】