Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
CHPASS(1)		  BSD General Commands Manual		     CHPASS(1)

     chpass, chfn, chsh	-- add or change user database information

     chpass [-s	newshell] [user]
     chpass -a list

     chpass allows editing of the user database	information associated with
     user, or, by default, the current user.  The information is formatted and
     supplied to an editor for changes.

     Only the information that the user	is allowed to change is	displayed.

     chfn and chsh are synonyms	for chpass.

     The options are as	follows:

     -a	list
	     The superuser is allowed to directly supply a user	database en-
	     try, in the format	specified by passwd(5),	as an argument.	 This
	     argument must be a	colon (`:') separated list of all the user
	     database fields, although they may	be empty.

     -s	newshell
	     Attempts to change	the user's shell to newshell.

     Possible display items are	as follows:

	   Login:	     user's login name
	   Password:	     user's encrypted password
	   Uid:		     user's login
	   Gid:		     user's login group
	   Change:	     password change time
	   Expire:	     account expiration	time
	   Class:	     user's general classification
	   Home	Directory:   user's home directory
	   Shell:	     user's login shell
	   Full	Name:	     user's real name
	   Office Location:  user's office location
	   Office Phone:     user's office phone
	   Home	Phone:	     user's home phone

     The login field is	the user name used to access the computer account.

     The password field	contains the encrypted form of the user's password.

     The uid field is the number associated with the login field.  Both	of
     these fields should be unique across the system (and often	across a group
     of	systems) as they control file access.

     While it is possible to have multiple entries with	identical login	names
     and/or identical user IDs,	it is usually a	mistake	to do so.  Routines
     that manipulate these files will often return only	one of the multiple
     entries, and that one by random selection.

     The group field is	the group that the user	will be	placed in at login.
     Since BSD supports	multiple groups	(see groups(1)), this field currently
     has little	special	meaning.  This field may be filled in with either a
     number or a group name (see group(5)).

     The change	field is the date by which the password	must be	changed.

     The expire	field is the date on which the account expires.

     Both the change and expire	fields should be entered in the	form month day
     year where	month is the month name	(the first three characters are	suffi-
     cient), day is the	day of the month, and year is the year.

     The class field specifies a key in	the login.conf(5) database of login
     class attributes.	If empty, the "default"	record is used.

     The user's	home directory is the full UNIX	path name where	the user will
     be	placed at login.

     The shell field is	the command interpreter	the user prefers.  If the
     shell field is empty, the Bourne shell (/bin/sh) is assumed.  When	alter-
     ing a login shell,	and not	the superuser, the user	may not	change from a
     non-standard shell	or to a	non-standard shell.  Non-standard is defined
     as	a shell	not found in /etc/shells.

     The last four fields are for storing the user's full name,	office
     location, and work	and home telephone numbers.

     Once the information has been verified, chpass uses pwd_mkdb(8) to	update
     the user database.

     The vi(1) editor will be used unless the environment variable EDITOR is
     set to an alternate editor.  When the editor terminates, the information
     is	re-read	and used to update the user database itself.  Only the user,
     or	the superuser, may edit	the information	associated with	the user.

     /etc/master.passwd	     user database
     /etc/passwd	     user database, with confidential information re-
     /etc/ptmp		     lock file for the passwd database
     /etc/shells	     list of approved shells
     /var/tmp/pw.XXXXXXXXXX  temporary copy of the user	passwd information

     Attempting	to lock	password file, please wait or press ^C to abort

     The password file is currently locked by another process; chpass will
     keep trying to lock the password file until it succeeds or	the user hits
     the interrupt character (control-C	by default).  If chpass	is interrupted
     while trying to gain the lock any changes made will be lost.

     If	the process holding the	lock was prematurely terminated	the lock file
     may be stale and chpass will wait forever trying to lock the password
     file.  To determine whether a live	process	is actually holding the	lock,
     the admin may run the following:

	   $ fstat /etc/ptmp

     If	no process is listed, it is safe to remove the /etc/ptmp file to clear
     the error.

     finger(1),	login(1), passwd(1), getusershell(3), login.conf(5),
     passwd(5),	pwd_mkdb(8), vipw(8)

     Robert Morris and Ken Thompson, "Password security: a case	history",
     Communications of the ACM,	Issue 11, Volume 22, 594-597, Nov. 1979.

     The chpass	command	appeared in 4.3BSD-Reno.

BSD			       November	26, 2015			   BSD


Want to link to this manual page? Use this URL:

home | help