OxideBSD
PASSWD(5) File Formats Manual PASSWD(5)

passwd, master.passwd — the account database

The file /etc/master.passwd, readable only by the superuser, holds one line per account with ten fields separated by colons:

name:password:uid:gid:class:change:expire:gecos:home:shell
name
The login name.
password
The crypt(3) hash of the password. Empty means no password is needed; a hash beginning with ‘*’ or ‘!’ locks the account.
uid, gid
The user and primary group IDs.
class
The login class in login.conf(5).
change
The time, in seconds since the Epoch, by which the password must be changed; 0 for none.
expire
The time, in seconds since the Epoch, at which the account expires; 0 for none.
gecos
The user's full name and similar information.
home
The home directory.
shell
The login shell; empty means /bin/sh.

The public /etc/passwd, readable by everyone, is generated from it by pwd_mkdb(8). It has seven fields, with the password replaced by ‘*’ and the class, change and expire fields left out:

name:*:uid:gid:gecos:home:shell

There is no /etc/shadow. The C library's getspnam(3) reads /etc/master.passwd, reporting the change time as the day the password was last changed with a maximum age of 0, and the expire time as the account's expiry day.

/etc/master.passwd
 
/etc/passwd
 

login(1), passwd(1), crypt(3), getpwent(3), login.conf(5), pwd_mkdb(8)

A passwd file format appeared in Version 1 AT&T UNIX. master.passwd appeared in 4.3BSD-Reno.

September 26, 2026 OxideBSD