在 CentOS 系统中替换(修改)用户密码,常见有以下几种方式,按使用场景说明:
passwd
执行后会提示输入当前密码,再输入新密码并确认。
✅ 适用于普通用户或 root 用户。
passwd 用户名
示例:
passwd testuser
root 修改密码时不需要知道原密码。
echo + passwd --stdin(CentOS 7 常用)echo "新密码" | passwd --stdin 用户名
示例:
echo "Test@123" | passwd --stdin testuser
⚠️ 注意:密码会明文出现在命令历史中,安全性较低。
chpasswd(推荐)echo "用户名:新密码" | chpasswd
示例:
echo "testuser:Test@123" | chpasswd
✅ 更安全,适合脚本使用。
chage -d 0 用户名
示例:
chage -d 0 testuser
用户下次登录时会被要求立即修改密码。
查看密码策略:
chage -l 用户名
设置密码有效期(如 90 天):
chage -M 90 用户名
密码复杂度要求
pam_pwquality忘记 root 密码
| 场景 | 命令 |
|---|---|
| 修改自己的密码 | passwd |
| root 修改其他用户密码 | passwd 用户名 |
| 脚本修改密码 | `echo 用户:密码 |
| 强制下次登录改密码 | chage -d 0 用户名 |
如果你需要的是 忘记 root 密码如何重置、CentOS 8 / Rocky / Alma 差异、或 批量修改多用户密码,可以继续问我。