ypfiles(4) CLIX ypfiles(4)
NAME
ypfiles - Network Information Service (NIS) database and directory
structure
DESCRIPTION
The Network Information Service (NIS) network lookup service uses a
database of ndbm files in the /etc/yp directory hierarchy. An ndbm
database consists of two files, created by calls to the dbm library
package. One has the filename extension .pag and the other has the
filename extension .dir. For instance, the database named hosts.byname is
implemented by the pair of files hosts.byname.pag and hosts.byname.dir.
An ndbm database served by the NIS is called an NIS map. A NIS domain is
a named set of NIS maps. Each NIS domain is implemented as a subdirectory
of /etc/yp containing the map. Any number of NIS domains can exist. Each
may contain any number of maps.
No maps are required by the NIS lookup service itself, although they may
be required for the normal operation of other parts of the system. There
is not a list of maps which NIS serves - if the map exists in a given
domain, and a client asks about it, the NIS serves it. For a map to be
accessible consistently, it must exist on all NIS servers that serve the
domain. To provide data consistency between the replicated maps, an entry
to run the ypxfr command periodically should be made in the crontab file
on each server. More information on this topic is in ypxfr(8).
NIS maps should contain two distinguished key-value pairs. The first is
the key NIS_LAST_MODIFIED, having as a value a ten-character ASCII order
number. The order number should be the CLIX time (in seconds) when the
map was built. The second key is NIS_MASTER_NAME, with the name of the
NIS master server as a value. The makedbm command generates both key-
value pairs automatically. A map that does not contain both key-value
pairs can be served by the NIS, but the ypserv process is not able to
return values for ``Get order number'' or ``Get master name'' requests.
In addition, values of these two keys are used by ypxfr when it transfers
a map from a master NIS server to a slave. If ypxfr cannot figure out
where to get the map, or if it is unable to determine whether the local
copy is more recent than the copy at the master, extra command line flags
must be set when it is run.
NIS maps must be generated and modified only at the master server. They
are copied to the slaves using ypxfr to avoid potential byte-ordering
problems among NIS servers running on machines with different
architectures, and to minimize the amount of disk space required for the
ndbm files. The NIS database can be initially set up for both masters and
slaves by using the ypinit command.
After the server databases are set up, it is probable that the contents of
some maps will change. In general, some ASCII source version of the
database exists on the master, and it is changed with a standard text
2/94 - Intergraph Corporation 1
ypfiles(4) CLIX ypfiles(4)
editor. The update is incorporated into the NIS map and is propagated
from the master to the slaves by running /etc/yp/Makefile. All supplied
maps have entries in /etc/yp/Makefile. If an NIS map is added, this file
should be edited to support the new map. The makefile uses makedbm to
generate the NIS map on the master, and yppush to propagate the changed
map to the slaves. The yppush command is a client of the map ypservers,
which lists all the NIS servers (see yppush(8)).
RELATED INFORMATION
Commands: makedbm(8), ypinit(8), ypmake(8), ypxfr(8), yppush(8),
yppoll(8), ypserv(8), rpcinfo(8)
2 Intergraph Corporation - 2/94