Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
RPC.YPXFRD(8)           FreeBSD System Manager's Manual          RPC.YPXFRD(8)

     rpc.ypxfrd -- NIS map transfer server

     rpc.ypxfrd [-p path]

     The rpc.ypxfrd utility is used to speed up the distribution of very large
     NIS maps from NIS master to NIS slave servers.  The normal method for
     transfering maps involves several steps:

           +o   The master server calls yppush(8) to inform the slave servers
               to start a transfer.

           +o   The slave servers invoke ypxfr(8), which reads the entire con-
               tents of a map from the master server using the yp_all() func-

           +o   The ypxfr(8) program then creates a new map database file by
               using the db(3) library hash method to store the data that it
               receives from the server.

           +o   When all the data has been retrieved, ypxfr(8) moves the new
               file into place and sends ypserv(8) on the local machine a
               YPPROC_CLEAR to tell it to refresh its database handles.

     This process can take several minutes when there are very large maps
     involved.  For example: a passwd database with several tens of thousands
     of entries can consume several megabytes of disk space, and it can take
     the db(3) library package a long time to sort and store all the records
     in a hash database.  Consider also that there are two sets of map files:{name,uid} and{name,uid}.

     The rpc.ypxfrd utility speeds up the transfer process by allowing NIS
     slave servers to simply copy the master server's map files rather than
     building their own from scratch.  Simply put, rpc.ypxfrd implements an
     RPC-based file transfer protocol.  Transfering even a multi-megabyte file
     in this fashion takes only a few seconds compared to the several minutes
     it would take even a reasonably fast slave server to build a new map from

     The rpc.ypxfrd utility uses the same access restriction mechanism as
     ypserv(8).  This means that slave servers will only be permitted to
     transfer files if the rules in the securenets database permit it (see
     ypserv(8) for more information on securenets).  Furthermore, only slave
     servers using reserved ports will be allowed to transfer the
     master.passwd maps.

     The following option is available:

     -p path
             This option can be used to override the default path to the loca-
             tion of the NIS map databases.  The compiled-in default path is

     /var/yp/[domainname]/[maps]       The NIS maps for a particular NIS

     yp(8), yppush(8), ypserv(8), ypxfr(8)

     Bill Paul <>

     The FreeBSD ypxfrd protocol is not compatible with that used by SunOS.
     This is unfortunate but unavoidable: Sun's protocol is not freely avail-
     able, and even if it were it would probably not be useful since the SunOS
     NIS v2 implementation uses the original ndbm package for its map data-
     bases whereas the FreeBSD implementation uses Berkeley DB.  These two
     packages use vastly different file formats.  Furthermore, ndbm is byte-
     order sensitive and not very smart about it, meaning that am ndbm data-
     base created on a big endian system cannot be read on a little endian

FreeBSD 6.2                      June 2, 1996                      FreeBSD 6.2


Want to link to this manual page? Use this URL:

home | help