xref: /freebsd/usr.sbin/yp_mkdb/yp_mkdb.8 (revision 0518c2b948a47020ba8e6e7b13d96bc4baaf3d3e)
1.\" Copyright (c) 1995, 1996
2.\"	Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\"    must display the following acknowledgement:
14.\"	This product includes software developed by Bill Paul
15.\" 4. Neither the name of the University nor the names of its contributors
16.\"    may be used to endorse or promote products derived from this software
17.\"    without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL Bill Paul OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\" $FreeBSD$
32.\"
33.Dd March 12, 1996
34.Dt YP_MKDB 8
35.Os
36.Sh NAME
37.Nm yp_mkdb
38.Nd "generate the NIS databases"
39.Sh SYNOPSIS
40.Nm yp_mkdb
41.Fl c
42.Nm yp_mkdb
43.Fl u Ar dbname
44.Nm yp_mkdb
45.Op Fl c
46.Op Fl b
47.Op Fl s
48.Op Fl f
49.Op Fl i Ar inputfile
50.Op Fl o Ar outputfile
51.Op Fl d Ar domainname
52.Op Fl m Ar mastername
53.Ar inputfile
54.Ar dbname
55.Sh DESCRIPTION
56.Nm Yp_mkdb
57creates
58.Xr db 3
59style databases for use with FreeBSD's NIS server.
60.Nm Yp_mkdb
61reads data from
62.Ar inputfile ,
63and writes it to
64.Ar dbname
65in
66.Xr db 3
67format (using the hash table method).
68The input should be in 'key data' format, which is to say
69two fields of
70.Tn ASCII
71data separated by white space. The first field
72is assumed to be the key, and everything else is assumed to be
73the data.
74These databases are typically stored in
75.Pa /var/yp/[domainname]
76where
77.Ar domainname
78is the name of the NIS domain being served.
79.Nm Yp_mkdb
80is usually invoked by
81.Pa /var/yp/Makefile .
82.Nm Yp_mkdb
83can also be used to dump an NIS database file so that its
84contents can be examined. For security reasons, all databases that
85.Nm
86creates are readable and writable by owner only (and usually the
87owner is root).
88.Pp
89The following options are available:
90.Bl -tag -width indent
91.It Fl c
92Cause
93.Nm
94to send a YPPROC_CLEAR request to
95.Xr ypserv 8
96on the local host. This signal tells the server to close any open
97database descriptors and flush out its database cache. If used alone,
98this flag signals the server and does nothing else. If used as part
99of a database creation command,
100.Nm
101will send the signal only after the new database has been successfully
102created.
103.It Fl b
104Cause
105.Nm
106to add a special entry to the database with a key of
107.Em YP_INTERDOMAIN
108and an empty data field. If this key is present in a map, it alters the
109behavior of the 'match' procedure in
110.Xr ypserv 8
111slightly. If a match query fails (because the server couldn't find
112a record that matched the supplied key), and the
113.Em YP_INTERDOMAIN
114key exists within the queried map,
115.Xr ypserv 8
116will try to match the entry again using a DNS lookup. Note that this
117special behavior only applies to the
118.Em hosts
119maps. Using the
120.Fl b
121flag for other maps has no effect.
122.It Fl s
123This flag is used to add a special entry to the database with a key of
124.Em YP_SECURE
125and an empty data field. If this key is present in a map,
126.Xr ypserv 8
127will deny access to the map to any client that is not using a
128reserved port for its query. This is used mainly for the
129.Em master.passwd
130maps, which should be restricted to privileged access only.
131.It Fl f
132This flag is used to turn on filtering of lines in the source file
133input that start with ``+'' or ``-'' characters. These characters
134have special meaning for the
135.Pa group ,
136.Pa passwd
137and
138.Pa master.passwd
139maps and hence should not be allowed to appear in them as the first
140character of a key or datum. If the
141.Fl f
142flag is used,
143.Nm
144will reject any source line that starts with a ``+'' or ``-''
145character and issue a warning message displaying the line that
146was dropped.
147.It Fl u Ar dbname
148Dump (or 'unwind') an NIS database. This option can be used to
149inspect the contents of an existing NIS database.
150.It Fl i Ar inputfile
151When generating an NIS map, encode
152.Ar inputfile
153as a special entry in the database with a key of
154.Em YP_INPUT_FILE .
155.It Fl o Ar outputfile
156When generating an NIS map, encode
157.Ar outputfile
158as a special entry in the database with a key of
159.Em YP_OUTPUT_FILE .
160.It Fl d Ar domainname
161When generating an NIS map, encode
162.Ar domainname
163as a special entry in the database with a key of
164.Em YP_DOMAIN_NAME .
165.It Fl m Ar mastername
166When generating an NIS map, encode
167.Ar mastername
168as a special entry in the database with a key of
169.Em YP_MASTER_NAME .
170This entry in the database is frequently used by various NIS utilities
171to determine the name of an NIS master server for a domain. By default,
172.Nm
173assumes that the local host is the NIS master; the
174.Fl m
175option is used to override this default.
176.Sh FILES
177.Bl -tag -width /var/yp/Makefile -compact
178.It Pa /var/yp/Makefile
179the Makefile that calls
180.Nm
181to build the NIS databases
182.Sh SEE ALSO
183.Xr db 3 ,
184.Xr ypserv 8
185.Sh AUTHORS
186.An Bill Paul Aq wpaul@ctr.columbia.edu
187