passwd Command
Beginner User Management man(1)Change user password
👁 9 views
📅 Updated: Mar 15, 2026
SYNTAX
passwd [OPTION]... [USERNAME]
What Does passwd Do?
passwd changes user passwords. Without arguments, it changes your own password. With a username argument (requires root), it changes another user's password.
passwd can also lock and unlock accounts, set password expiration policies, and force password changes on next login. It interacts with /etc/shadow to store encrypted passwords.
passwd is essential for security management — setting strong passwords, enforcing rotation, disabling compromised accounts, and managing password policies.
passwd can also lock and unlock accounts, set password expiration policies, and force password changes on next login. It interacts with /etc/shadow to store encrypted passwords.
passwd is essential for security management — setting strong passwords, enforcing rotation, disabling compromised accounts, and managing password policies.
Options & Flags
| Option | Description | Example |
|---|---|---|
| username | Change password for specific user (root only) | sudo passwd jdoe |
| -l | Lock account (disable password) | sudo passwd -l jdoe |
| -u | Unlock account | sudo passwd -u jdoe |
| -d | Delete password (allow passwordless login) | sudo passwd -d jdoe |
| -e | Force password change on next login | sudo passwd -e jdoe |
| -S | Show password status | sudo passwd -S jdoe |
| -n | Minimum days between password changes | sudo passwd -n 7 jdoe |
| -x | Maximum days before password expires | sudo passwd -x 90 jdoe |
Practical Examples
#1 Change own password
Prompts for current password then new password.
$ passwd
Output:
Changing password for user.\nCurrent password:
#2 Change user password
Sets a new password for user jdoe (root only).
$ sudo passwd jdoe
Output:
Enter new UNIX password:
#3 Lock account
Locks the account — user cannot log in with password.
$ sudo passwd -l compromised_user
Output:
passwd: password expiry information changed
#4 Force password change
Forces user to change password on next login.
$ sudo passwd -e jdoe#5 Check password status
Shows password status: set/locked, last change, expiry info.
$ sudo passwd -S jdoe
Output:
jdoe P 2024-01-15 0 90 7 -1
#6 Set expiration policy
Password expires after 90 days, cannot change within 7 days, warns 14 days before expiry.
$ sudo passwd -x 90 -n 7 -w 14 jdoeTips & Best Practices
Force rotation on compromise: If an account may be compromised: sudo passwd -e username forces a password change on next login.
-d removes security: passwd -d deletes the password entirely, allowing login without one. Only use for system accounts or testing.
passwd vs chage: passwd sets and manages passwords. chage provides more detailed control over aging policies (min/max days, warnings).
Frequently Asked Questions
How do I change my password?
Simply run passwd. You will be prompted for your current password, then asked to enter and confirm the new one.
How do I force a user to change their password?
sudo passwd -e username expires the password immediately. The user must set a new one on next login.
How do I lock a user account?
sudo passwd -l username locks the password. sudo passwd -u username unlocks it. Alternatively, use usermod -L/-U.
Related Commands
More User Management Commands
Master Linux with Professional eBooks
Curated IT eBooks covering Linux, DevOps, Cloud, and more
Browse Books →