MAKEFILE.YP(8) - System Manager’s Manual #
MAKEFILE.YP(8) - System Manager’s Manual
NAME #
Makefile.yp - generate and distribute YP maps
SYNOPSIS #
cd /var/yp; make
DESCRIPTION #
The Makefile.yp utility generates or updates the YP maps to be served by ypserv(8).
Each YP domain to be served must have its own subdirectory below /var/yp. Use ypinit(8) to set up such subdirectories. In particular, ypinit(8) will copy /var/yp/Makefile.yp into each new domain subdirectory. For common configuration changes affecting all future domains, edit /var/yp/Makefile.yp before running ypinit(8). For configuration changes affecting only one individual domain, edit the Makefile in the respective domain subdirectory after running ypinit(8). Do not edit /var/yp/Makefile.yp.dist.
By default, input data for generating YP maps is collected from the
/etc
directory.
Edit the
DIR
variable to choose a different source directory.
To regenerate all maps for all domains, run make(1) in /var/yp. To regenerate all maps for one single domain, run make(1) in the respective domain subdirectory. The makedbm(8) utility will be used to create the maps in Berkeley DB format, and they will be stored inside the appropriate domain subdirectory.
Whenever a YP map has been updated, it is automatically distributed to all
slave servers in the respective domain using the
yppush(8)
utility.
To disable automatic distribution, set the
NOPUSH
variable to an arbitrary, non-empty, value.
STANDARD YP MAPS #
By default, Makefile.yp provides the following make(1) targets:
passwd
Generates the passwd.byname, passwd.byuid, master.passwd.byname, and master.passwd.byuid maps from master.passwd(5) for use by getpwent(3).
The master.passwd.* maps always contain complete records in master.passwd(5) format, including the encrypted passwords.
The passwd.* maps follow the reduced passwd(5) format having the class, change, and expire fields removed but by default the encrypted passwords are included too. If the
UNSECURE
variable is changed to be empty, the encrypted passwords are replaced by asterisks (’\*
’). This “secure” mode is compatible with OpenBSD and FreeBSD clients.
The
MINUID
andMAXUID
variables restrict the range of user IDs included into the four passwd maps. By default, system users are not included.
netgroup
Generates the
*netgroup*,
*netgroup.byuser*,
and
*netgroup.byhost*
maps from
netgroup(5)
for use by
getnetgrent(3)
and
passwd(5).
Requires the
revnetgroup(8)
utility.
group
Generates the
*group.byname*
and
*group.bygid*
maps from
group(5)
for use by
getgrent(3).
The
`MINGID`
and
`MAXGID`
variables restrict the range of group IDs included into both group maps.
By default, system groups are not included.
netid
Generates the
*netid.byname*
map from
netid(5),
passwd(5),
group(5),
and
hosts(5)
for use by
getgrouplist(3).
Falls back to
master.passwd(5)
in case
passwd(5)
is not available.
Requires the
mknetid(8)
utility.
hosts
Generates the
*hosts.byname*
and
*hosts.byaddr*
maps from
hosts(5)
for use by
gethostbyname(3).
To get
[ypserv(8)](/man/man8/ypserv.8)
to ask DNS for unknown hosts, set the
`USEDNS`
variable to
**-b**.
ethers
Generates the
*ethers.byaddr*
and
*ethers.byname*
maps from
ethers(5)
for use by
ether_aton(3).
rpc
Generates the
*rpc.bynumber*
map from
rpc(5)
for use by
getrpcent(3).
services
Generates the
*services.byname*
map from
services(5)
for use by
getservent(3).
protocols
Generates the
*protocols.byname*
and
*protocols.bynumber*
maps from
protocols(5)
for use by
getprotoent(3).
aliases
Generates the
*mail.aliases*
and
*mail.byaddr*
maps from
aliases(5).
This target uses both
sendmail(8)
with the option
**-bi**
and the
mkalias(8)
utility.
amd.home
Generates the
*amd.home*
map from the file
*/etc/amd/amd.home*.
all
Generates all of the above, and sends a hangup signal to
[ypserv(8)](/man/man8/ypserv.8)
such that it uses the new maps.
In order to keep additional custom YP maps up to date, the Makefile should be extended to support additional targets.
FILES #
/var/yp/Makefile
Top level YP Makefile.
/var/yp/domainname/Makefile
Per domain YP maps Makefile.
/var/yp/domainname/ypservers.db
Database of hosts serving this domain.
/var/yp/domainname/mapname.db
Database files containing the YP maps.
/var/yp/domainname/target.time
Cookies controlling the operation of
[make(1)](/man/man1/make.1).
SEE ALSO #
make(1), dbopen(3), makedbm(8), yp(8), ypinit(8), yppush(8), ypserv(8)
BUGS #
When
NOPUSH
is set and individual maps are regenerated (as opposed to
all),
the hangup signal to
ypserv(8)
must be sent manually, or the new maps won’t be used.
When
NOPUSH
is unset, maps are pushed to the master server on the local host too,
slowing down
Makefile.yp.
OpenBSD 7.5 - August 30, 2019