CHFN(1) User Commands CHFN(1)

.SH "NAME" chfn - change full user name and information

.SH "SYNOPSIS"

.HP 120u

**chfn**  
\[*options*]  
\[*LOGIN*]

.SH "DESCRIPTION"

.PP The **chfn** command changes the user's full name, office room number, office phone number, and home phone number information for an account in the respective fields of /etc/passwd. This information is typically printed by [**finger**(1)](/man/os/shadow/finger.1) and similar programs. A normal user may only change the fields for her own account, subject to the restrictions in /etc/login.defs. (The default configuration is to prevent users from changing their fullname.) The superuser may change any field for any account. Additionally, only the superuser may use the **-o** option to change the undefined portions of the GECOS field.

.PP These fields must not contain any colons. Except for the *other* field, they should not contain any comma or equal sign. It is also recommended to avoid non-US-ASCII characters, but this is only enforced for the phone numbers. The *other* field is used to store accounting information used by other applications.

.PP If *LOGIN* is not specified, **chfn** acts on the current user, and prompts for the current user's password.

.SH "OPTIONS"

.PP The options which apply to the **chfn** command are:

.PP **-f**, **--full-name** *FULL\_NAME*

Change the user's full name.

.RE  
.PP **-h**, **--home-phone** *HOME\_PHONE*

Change the user's home phone number.

.RE  
.PP **-o**, **--other** *OTHER*

Change the user's other GECOS information. This field is used to store accounting information used by other applications, and can be changed only by a superuser.

.RE  
.PP **-r**, **--room** *ROOM\_NUMBER*

Change the user's room number.

.RE  
.PP **-R**, **--root** *CHROOT\_DIR*

Apply changes in the *CHROOT\_DIR* directory and use the configuration files from the *CHROOT\_DIR* directory. No SELINUX support.

.RE  
.PP **-u**, **--help**

Display help message and exit.

.RE  
.PP **-w**, **--work-phone** *WORK\_PHONE*

Change the user's office phone number.

.RE

.PP If none of the options is selected, **chfn** operates in an interactive fashion, prompting the user with the current values for all of the fields. Enter the new value to change the field, or leave the line blank to use the current value. The current value is displayed between a pair of **\[]** marks.

.SH "CONFIGURATION"

.PP The following configuration variables in /etc/login.defs change the behavior of this tool:

**CHFN\_RESTRICT** (string)

This parameter specifies which values in the *gecos* field of the /etc/passwd file may be changed by regular users using the **chfn** program. It can be any combination of letters *f*, *r*, *w*, *h*, for Full name, Room number, Work phone, and Home phone, respectively. For backward compatibility, *yes* is equivalent to *rwh* and *no* is equivalent to *frwh*. If not specified, only the superuser can make any changes. The most restrictive setting is better achieved by not installing **chfn** SUID.

.SH "FILES"

.PP /etc/login.defs

Shadow password suite configuration.

.RE  
.PP /etc/passwd

User account information.

.RE

.SH "SEE ALSO"

.PP [**chsh**(1)](/man/os/shadow/chsh.1), [**login.defs**(5)](/man/os/shadow/login.defs.5), [**passwd**(5)](/man/os/shadow/passwd.5).

10/26/2026 shadow-utils 4.20.3

---

Document: chfn(1) from shadow 4.20.3-r2 (Chainguard OS)
Source: https://github.com/shadow-maint/shadow
