DESCRIPTION
pwd_mkdb creates db(3) style secure and insecure databases for the speci-
fied file. These databases are then installed into /etc/spwd.db and
/etc/pwd.db, respectively. The file is installed into
/etc/master.passwd. The file must be in the correct format (see
passwd(5)). It is important to note that the format used in this system
is different from the historic Version 7 style format.
The options are as follows:
-c Check if the password file is in the correct format. Do not
change, add, or remove any files.
-p Create a Version 7 style password file and install it into
/etc/passwd.
-s Only update the secure version of the database. This is most
commonly used in conjunction with the -u flag during a password
change. Because the insecure database doesn't contain the pass-
word there is no reason to update it if the only change is in the
password field. Cannot be used in conjunction with the -p flag.
-d directory
Operate in a base directory other than the default of /etc. All
absolute paths (including file) will be made relative to
directory. Any directories specified as a part of file will be
stripped off. This option is used to create password databases
in directories other than etc; for instance in a chroot(8) jail.
-u username
Only update the record for the specified user. Utilities that
operate on a single user can use this option to avoid the over-
head of rebuilding the entire database. This option must never
be used if the line number of the user's record in
/etc/master.passwd has changed.
file The absolute path to a file in master.passwd format, as described
in passwd(5).
The two databases differ in that the secure version contains the user's
encrypted password and the insecure version has an asterisk (`*').
The databases are used by the C library password routines (see
getpwent(3)).
pwd_mkdb exits zero on success, non-zero on failure.
FILES
/etc/master.passwd current password file
/etc/passwd a Version 7 format password file
/etc/pwd.db insecure password database file
BUGS
Because of the necessity for atomic update of the password files,
pwd_mkdb uses rename(2) to install them. This, however, requires that
the file specified on the command line live on the same file system as
the /etc directory.
There are the obvious races with multiple people running pwd_mkdb on dif-
ferent password files at the same time. The front-ends to pwd_mkdb,
chpass(1), passwd(1), and vipw(8) handle the locking necessary to avoid
this problem.
BSD June 6, 1993 BSD
Man(1) output converted with
man2html