From ArchWiki
Revision as of 15:51, 8 November 2010 by SysPauli (talk | contribs) (How to set up a NIS client: edit /etc/passwd etc.)
Jump to: navigation, search

Tango-document-new.pngThis article is a stub.Tango-document-new.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:NIS#)


NIS is a protocol developed by Sun to allow one to defer user authentication to a server. The server software is in the ypserv package, and the client software is in the yp-tools package. ypbind-mt is also available, which is a multi threaded version of the client daemon.

Note: obviously this article is far from finished. hopefully in the future that will change, but in the meantime check the More resources section.

How to set up a NIS client

The first step is to install the tools that you need. This provides the configuration files and general tools needed to use NIS.

# pacman -S yp-tools ypbind-mt

Next put your NIS domain name into the file /etc/defaultdomain (create the file if it doesn't exist).

Now edit the /etc/yp.conf file and add your ypserver or nis server.

ypserver your.nis.server

Start the rpcbind and ypbind daemons (add them to your rc.conf file if you want it to start automatically).

# /etc/rc.d/rpcbind start
# /etc/rc.d/ypbind start

To test the setup so far you can run the command yptest:

# yptest

If it works you will, among other things, see the contents of the NIS user database (which is printed in the same format as /etc/passwd).

To actually use NIS to log in you have to edit /etc/nsswitch.conf. Modify the lines for passwd, group and shadow to say the following:

passwd: compat
group: compat
shadow: compat

Finally you have to add at least a special line to each of the files /etc/passwd, /etc/group, and /etc/shadow:

# echo "+::::::" >> /etc/passwd
# echo "+:::" >> /etc/group
# echo "+::::::::" >> /etc/shadow

And then do not forget

# /etc/rc.d/ypbind restart

See section 7.5 of The Linux NIS HOWTO for further information on configuring /etc/nsswitch.conf.

More resources