revnetgroup
—
generate reverse netgroup data
revnetgroup |
-u | -h
[-f netgroup_file] |
The revnetgroup
utility processes the
contents of a file in
netgroup(5)
format into what is called reverse netgroup form.
That is, where the original file shows netgroup memberships in terms of
which members reside in a particular group, the reverse netgroup format
specifies what groups are associated with a particular member. This
information is used to generate the netgroup.byuser
and netgroup.byhost NIS maps. These reverse netgroup
maps are used to help speed up netgroup lookups, particularly for the
innetgr
()
library function.
For example, the standard
/etc/netgroup file may list a netgroup and a list of
its members. Here, the netgroup is considered the
key and the member
names are the
data. By
contrast, the reverse netgroup.byuser database lists
each unique member as the key and the netgroups to which the members belong
become the data. Separate databases are created to hold information
pertaining to users and hosts; this allows netgroup username lookups and
netgroup hostname lookups to be performed using independent keyspaces.
By constructing these reverse netgroup databases (and the
corresponding NIS maps) in advance, the
getnetgrent(3)
library functions are spared from having to work out the dependencies
themselves on the fly. This is important on networks with large numbers of
users and hosts, since it can take a considerable amount of time to process
very large netgroup databases.
The revnetgroup
utility prints its results
on the standard output. It is usually called only by
/var/yp/Makefile when rebuilding the NIS netgroup
maps.
The revnetgroup
utility supports the
following options:
-u
- Generate netgroup.byuser output; only username
information in the original netgroup file is processed.
-h
- Generate netgroup.byhost output; only hostname
information in the original netgroup file is processed. (Note at least one
of the
-u
or -h
flags must
be specified.)
- [
-f
netgroup_file]
- The
revnetgroup
utility uses
/etc/netgroup as its default input file. The
-f
flag allows the user to specify an alternate
input file. Specifying ``-'' as the input file causes
revnetgroup
to read from the standard input.
- /var/yp/Makefile
- the Makefile that calls
yp_mkdb
and
revnetgroup
to build the NIS databases
- /etc/netgroup
- the default netgroup database file. This file is most often found only on
the NIS master server