我正在尝试在一台机器上使用NIS进行身份验证.我不得不在NIS服务器上更改用户帐户的一个用户ID号(我将用户ID username
从500 更改为509以避免与客户端上ID为500的本地用户帐户冲突).问题是它没有在客户端上正确更新.
特别是,如果我这样做ypcat passwd | grep username
,我会得到最新的信息:
username:*hidden*:509:509:User Name:/home/username:/bin/bash
但如果我这样做ypmatch username passwd
,它说:
username:*hidden*:500:500:User Name:/home/username:/bin/bash
这意味着当用户登录到其中一个客户端时,它具有错误的用户标识,这会导致各种问题.我已经"cd /var/yp; make"
在服务器"service ypbind restart"
上和客户端上完成了,但这并没有解决问题.有谁知道会导致这种情况以及如何以某种方式强制刷新客户端?(我在客户端和服务器上运行Fedora 8).
约翰奥指出了我正确的方向.
他是对的.如果在/etc/ypserv.conf中设置"files:0",则可以使ypserv不缓存文件.如果你必须在每次make后重启ypserv,这就是问题所在.
真正的解决方案是在/ var/log/messages中查找此错误:
ypserv[]: refused connect from 127.0.0.1 to procedure ypproc_clear (,;0)
makedbm -c表示:将YPPROC_CLEAR发送到本地ypserv.日志中的错误消息表示CLEAR消息被拒绝.您需要将127.0.0.1添加到/ var/yp/securenets.