mkpasswd - Creates a version of the basic user database organized for effi-
/usr/sbin/mkpasswd [-v] [-s size] passwdfile
-v 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 is 1024.
The mkpasswd command creates an auxiliary version of the basic user data-
base 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 automat-
ically 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 mkpasswd command.
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
The mkpasswd command exits with a nonzero exit code if any errors are
If the mkpasswd request is not successful, the following error message is
The passwdfile.dir and passwdfile.pag files already exist from a previ-
ous 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 informa-
tion 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
/usr/sbin/makepasswd -s 8 /etc/passwd
Specifies the command path
Commands: adduser(8), passwd(1), passwd(4), vipw(8)
Functions: getpwent(3), ndbm(3)