NFS 和 NIS(2)

2008-02-23 07:19:58来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折




建立这两个档案(如果它们不存在的话) touch /etc/gshadow /etc/netgroup


设定 NIS 的domain name /bin/nisdomainname chen


最好起一个有别於目前 domain 的名字这主要是出於安全考量。如果以後测试成功的话您可以将这行加进 /etc/rc.d/rc.local 里面同时在 /etc/sysconfig/network 档案里面修改这行 NISDOMAIN=chen





然後初始设定 NIS 服务 /usr/lib/yp/ypinit -m


记住要用 Ctrl D 来结束不是用 Ctrl C 哦切记切记

留意一下有否错误有则根据信息做适当修改无则继续。例如如果它回应说 "No rule to mak target xxxxxx, needed by yyyyyyyy."通常是在 /etc 下面找不到档案而已用 touch /etc/xxxxxxx 就可以解决之。


重新启动 ypserver 和 yppasswdd /etc/rc.d/init.d/ypserv restart
/etc/rc.d/init.d/yppasswdd restart



然後是设定 NIS Client 。这里是在 redhat62.siyongc.domain (192.168.0.22) 这台机器上面设定
执行 netconf 然後选择 ‘Network Information System (NIS) 再按 Enter进入後设定好 NIS domain(如chen要和 server 那端一致)和NIS server(如redhat52.siyongc.domain要确定该 server 在 /etc/hosts 里面指定正确)。如果您的系统没有 netconf 也不要紧可以自己修改後面提到的档案(如 /etc/yp.conf 和 /etc/sysconfig/network)。


接着执行 /bin/nisdomainname chen



然後修改 /etc/yp.conf加进这行 domain chen
ypserver redhat52.siyongc.domain





然後执行 setup 选择‘System Services’确定 [*]ypbind 被选择了。


修改 /etc/passwd在末尾加入





然後启动 ypbind: ypbind
(或者/etc/rc.d/init.d/ypbind restart)


测试 NIS

在客户端上面以 root 身份登录之後请输入 ypcat passwd


看看 server 端的帐号是否被列出来了。

您也可以执行 getent passwd netman


这里的‘netman’是在 NIS 伺服器上面的一个使用者帐号名称请改成您欲查询的帐号。这个命令的作用是让我们确定该帐号出现在 NIS 登录之中。如果您看不到任何信息回应那麽好可能上面的步骤(包括伺服器和客户端)还没正确完成您则需要找出原因所在。

如果您能得到信息回应例如 netman:x:1001:1001::/home/netman:/bin/bash




那是好消息否则您得从头进行 debug 方好继续。

然後输入 yppasswd netman
Please enter root passwd:
Please enter new passwd:
Please retype password:
(#注意: 最後两行是设定 netman 的 NIS password。最好和原来的密码一致因为原来的密码也会被更改为 nis 的密码。)

其实上面这步不是必须的如果您能够从另外的机器用 NIS帐号登录就可以略过此步骤。

接着请在本地主机上面建立起该使用者的家目录 mkdir /home/netman
chown netman:netman /home/netman


当然了您也可以设定 Linux 在开机的时候通过 NFS 挂载到使用者原本的家目录(tips修改 /etc/fstab)。但如何做您自己去尝试吧这里暂时卖个关子。

如果该使用者需要使用到本机上面的邮件系统也请为之建立信箱 touch /var/spool/mail/netman
chown netman:mail /var/spool/mail/netman
chmod 660 /var/spool/mail/netman


这样您就可以使用 NIS 登录了。

当您有新的使用者增加之後欲加入 NIS 中的话您要先 cd /var/yp 然後执行 make 来更新 nis 资料。如果登录失败重新启动 yppasswdd 服务然後用 yppasswd 来设定他/她的 NIS 密码但要注意一点原使用者帐号必须已经设定过密码管此时可以取而代之为新的密码。然而有趣的是之後您再於原来主机上更改原帐号的密码却不会影响 NIS 的哦。

如果还有问题您要检查一下 server 端的 ypserv 和 yppasswdd以及 client 端的 ypbind 是否被启动成功(tips执行rpcinfo -p尤其注意 yppasswdd)。其中portmap 是一个很重要的服务(有些系统会显示为 rpcbind)在您执行 ypserv 和 yppasswdd 之前要确定它已经被启动了。如果您需要重启 portmap 要确定所有基於它的服务也要重新启动。

同时留意一下 client 和 server 的 NIS domain name 是否一致。必要时您或许要执行/usr/lib/yp/ypinit -m重新建立 ypserv 资料但这样您就需要重新执行 yppasswd 来设定使用者的 NIS 密码了。

设定 NIS在 server 端牵涉的档案比较多诸如 rpcportmapypnsswitch等等。您可以看一下关於 NIS 的HOWTO 文章或相关的 manuals。

另有一篇和网友的讨论文章我也觉得蛮值得参考一下的:

wkhuang wrote in message
news:3aZSaR$GvO@bbs.cis.nctu.edu.tw...
> ==> 在 "网中人" 的文章中提到:
> > 2000/05/28
> > 网中人今天对 NIS 系统再进行测试。对原来的文章做了小小修改主要是针对测
试过
> > 程中需要注意的地方增加了说明。希望读者留意和共同参与测试。
> > http://pds.nchu.edu.tw/study_area/linux/linux_nfs.htm
>
> 不知您可否测试一下redhat6.2上yp之後,finger有个小bug。
> 比如同一台电脑是yp server, 也是yp client.

抱歉因为弟还的 RH6.2 还没安装或许过两天再测试吧。

> 在建立yp帐号时,若依照你的方法,你的yp map database的来源,应该是在
> /etc下的一些档案, 主要就是/etc/passwd,/etc/shadow, /etc/group,
/etc/gshadow

嗯的确如此修改 /var/yp/Makefile 里面的参数可以改变预设内容。

> (其实这样不太好,因为这样root,和一些根本不该上yp的帐号都跟着进去了,建议去
> 改/var/yp/Makefile中更改YPPWDDIR = /etc改为某个另外的目录,并将几个
> 档, 如passwd, shadow, group, gshadow拷过去,并只留你想让他上yp的帐号和
> group)

您的建议非常好。不过在弟的 RH6.0 上面 (後面的测试相同)
ypcat passwd 只会显示 uid 500 以上的使用者不知道是否正常呢

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:如何改变X-WINDOW的分辨率?

下一篇:如何在 RedHat 中限制、允许telnet