mkpasswd - Creates a version of the basic user database
organized for efficient searches
/usr/sbin/mkpasswd [-v] [-s size] passwdfile
Specifies that each stored entry be listed on standard
output Specifies the page block size to use in creating
the hashed password database. The size argument is a
value from 1 to 32, representing page block sizes from
1024 to 32768, respectively. The default page block size
The mkpasswd command creates an auxiliary version of the
basic user database in a form organized for efficient
searches by the getpwuid subroutine and the getpwnam subroutine.
The mkpasswd command reads the user attributes in
the /etc/passwd file and creates a hashed password
database in the /etc/passwd.dir and /etc/passwd.pag files
(see ndbm(3) reference page).
If you specify a file other than /etc/passwd, the command
reads the user attributes in that file and creates a
hashed password database in the passwdfile.dir and passwdfile.pag
files. It is important to know that the password
file you designate must be in password file format (see
the passwd(4) reference page).
Note that if you use the vipw command to edit a password
file, you do not need to use the mkpasswd command. This is
because the vipw command automatically invokes the
mkpasswd command which in turn creates the /etc/passwd.dir
and /etc/passwd.pag files.
Only the root user should have execute access to the
Files accessed: File /etc/passwd /etc/passwd.pag
/etc/passwd.dir passwdfile passwdfile.pag passwdfile.dir
The mkpasswd command may fail with a errno value of EFBIG
if the password file is large (30,000 entries or more).
This failure can be avoided by using the -s option to set
a larger page block size for the hashed database.
The mkpasswd command exits with a nonzero exit code if any
errors are detected.
If the mkpasswd request is not successful, the following
error message is displayed: The passwdfile.dir and passwdfile.pag
files already exist from a previous execution of
the same mkpasswd command.
If enhanced security is running on your system, the passwords
are stored in the extended attributes database. See
the Security guide for more information about passwords in
the enhanced security environment.
If you have not used vipw to edit the /etc/passwd and wish
to generate a hashed password database, enter the following:
/usr/sbin/mkpasswd -v /etc/passwd
An auxiliary version of the basic user database
(/etc/passwd.dir and /etc/passwd.pag files) is created
with a hashing algorithm.
To create a hashed password database with a page block
size of 8192, enter the following: /usr/sbin/makepasswd -s
Specifies the command path
Commands: adduser(8), passwd(1), passwd(4), vipw(8)
Functions: getpwent(3), ndbm(3)
[ Back ]