makedbm(1M)
NAME
makedbm − make a Network Information System database
SYNOPSIS
/usr/etc/yp/makedbm [-i nis_input_file] [-o nis_output_name] [-d nis_domain_name] [-m nis_master_name] infile outfile
/usr/etc/yp/makedbm −u database_name
DESCRIPTION
makedbm generates databases (maps) for the Network Information System (NIS) from infile. A database created by makedbm consists of two files: outfile.pag and outfile.dir. A makedbm database contains records called dbm records composed of key-value pairs.
Each line of infile is converted to a single dbm record; all characters up to the first tab or space form the key, and the remainder of the line is the value. If a value read from infile ends with \, the value for that record is continued onto the next line. The NIS clients must interpret the # character (which means that makedbm does not treat the # as if it precedes a comment). If infile is a hyphen (-), makedbm reads standard input.
makedbm always generates a special dbm record with the key YP_LAST_MODIFIED, whose value is the time of last modification of infile (or the current time, if infile is -). This value is also known as the order number of a map, and yppoll prints it for a specified NIS map (see yppoll(1M)).
Another special dbm record always created by makedbm has the key YP_MASTER_NAME. Its value is usually the host name retrieved by gethostname(); however, the -m option can be used to specify a different value (see gethostname(2)).
Options
makedbm recognizes the following options and command-line arguments.
-i Create a special dbm record with the key YP_INPUT_FILE and the value nis_input_file.
-o Create a special dbm record with the key YP_OUTPUT_NAME and the value nis_output_name.
-d Create a special dbm record with the key YP_DOMAIN_NAME and the value nis_domain_name.
-m Replace the value of the special dbm record whose key is YP_MASTER_NAME with nis_master_name.
-u Undo the database_name (i.e., write the contents of database_name to the standard output), one dbm record per line. A single space separates each key from its value.
EXAMPLES
Shell scripts can be written to convert ASCII files such as /etc/netgroup to the key-value form used by makedbm. For example,
#!/bin/sh
/bin/awk ’BEGIN { FS = ":" } { print $1, $0 }’ \
/etc/netgroup | \
makedbm - netgroup
converts the file /etc/netgroup to a form that is read by makedbm to make the NIS map netgroup. The keys in the database are netgroup(4) names, and the values are the remainders of the lines in the /etc/netgroup file.
AUTHOR
makedbm was developed by Sun Microsystems, Inc.
SEE ALSO
domainname(1), ypinit(1M), ypmake(1M), yppoll(1M), gethostname(2), netgroup(4), ypfiles(4).
INTERNATIONAL SUPPORT
8-bit data, 8-bit file names, messages
Hewlett-Packard Company — HP-UX Release 9.0: August 1992