Linux改密码只会passwd?三种方法速学!

当前用户修改自身密码(最常用)

适用场景:普通用户或管理员修改自己的密码。
命令步骤:

  1. 打开终端,输入命令:
    passwd
  2. 根据提示输入当前密码(验证身份)。
  3. 输入新密码(需输入两次,确保一致)。
    Changing password for user demo.
    Current password: ********  # 输入原密码
    New password: ********      # 输入新密码
    Retype new password: ****** # 再次确认新密码
    passwd: password updated successfully

    注意:

  • 密码输入时无回显(不显示字符),属正常现象。
  • 若密码过于简单,系统可能拒绝(可强制设置passwd -minlen=0临时绕过,但不建议)。

root用户修改其他用户密码(管理员权限)

适用场景:管理员为普通用户重置密码(无需原密码验证)。
命令步骤:

  1. 使用su或sudo -i切换到root权限:
    sudo -i   # 或 su root
  2. 执行命令(以修改用户tom的密码为例):
    passwd tom
  3. 直接设置新密码(无需原密码):
    New password: ********
    Retype new password: ********

    关键点:

  • 普通用户无法修改他人密码,必须通过root或sudo权限。
  • 批量修改用户密码推荐chpasswd命令(见下文)。

非交互式修改密码(脚本/批量操作)

适用场景:自动化任务或批量重置密码。

方法1:使用chpasswd命令

echo "username:new_password" | sudo chpasswd

示例:将用户lucy的密码改为MyPass123!

echo "lucy:MyPass123!" | sudo chpasswd

方法2:使用--stdin选项(部分系统支持)

echo "new_password" | sudo passwd --stdin username

安全注意事项

  1. 密码强度:
    • 长度至少8位,包含大小写字母、数字、符号(如 P@ssw0rd!)。
    • 避免常见词汇(admin123)、连续字符(123456)或个人信息。
  2. 定期更新:
    • 建议每90天更换一次密码(企业环境可通过chage命令设置时效)。
  3. 特权保护:
    • 避免直接使用root账户操作,优先通过sudo授权。
    • 敏感命令历史用history -d <行号>清理。

常见问题解决

  • 报错”Authentication token manipulation error”:
    可能原因:无权限、密码文件/etc/shadow损坏、磁盘满。
    解决方案:

    1. 检查权限:ls -l /etc/shadow(应为-rw-r-----)。
    2. 修复文件:sudo touch /etc/shadow(谨慎操作)。
  • 忘记root密码:
    需进入单用户模式(重启后按e进入GRUB编辑内核参数,追加init=/bin/bash)。

场景 命令 所需权限
修改自身密码 passwd 当前用户
管理员修改他人密码 sudo passwd <用户名> root或sudo权限
脚本/批量修改 echo "user:pass" | chpasswd root或sudo权限

引用说明基于Linux核心工具passwd和chpasswd的官方手册(man 1 passwd, man 1 chpasswd),符合POSIX标准,适用于Ubuntu、CentOS等主流发行版,安全建议参考NIST《数字身份指南》(SP 800-63B)。

通过以上方法,您可灵活管理Linux用户密码,如遇复杂问题,建议查阅man passwd或联系系统管理员。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8290.html

赞 (0)
酷番叔酷番叔
上一篇 2025年7月21日 20:51
下一篇 2025年7月21日 21:06

相关推荐

  • Linux里打开文件夹的具体方法是什么?命令行和图形界面如何操作?

    在Linux操作系统中,文件夹(目录)是文件管理的基本单元,掌握打开文件夹的方法是高效使用系统的基础,无论是图形化界面还是命令行环境,Linux都提供了多种灵活的打开方式,满足不同用户的使用习惯和需求,本文将详细介绍这些方法,涵盖图形界面、命令行工具及终端文件管理器等场景,帮助用户根据实际场景选择最合适的操作方……

    2025年9月21日
    28200
  • Linux如何测试邮件发送与接收功能?

    在Linux环境下进行邮件测试是系统运维、应用开发或邮件服务调试中的常见需求,涵盖本地邮件发送、远程SMTP连接、邮件内容验证、垃圾邮件规则检测等多个场景,本文将结合常用工具和实际操作步骤,详细说明如何在Linux中完成邮件测试工作,邮件测试常用工具及选择Linux生态提供了多种邮件测试工具,可根据测试需求选择……

    2025年9月8日
    26800
  • linux ftp 用户如何访问所有文件

    Linux 中,通过配置 FTP 服务器权限及用户权限,使特定用户可访问

    2025年8月18日
    23100
  • Linux命令执行后如何撤销?

    未执行命令的撤销取消当前输入行Ctrl + C:强制终止正在输入或运行的命令(最常用),Ctrl + U:删除光标前整行内容(Bash/Zsh默认支持),Ctrl + W:删除光标前的一个单词,Esc + D:删除光标后的一个单词,清屏重置Ctrl + L 或输入 clear:清除终端显示,但已输入未执行的命令……

    2025年7月20日
    31700
  • Linux端口被占如何速查?

    核心工具及命令netstat 命令(经典工具)netstat -tuln | grep <端口号>参数解析:-t(TCP端口)-u(UDP端口)-l(仅监听端口)-n(以数字形式显示)-p(显示进程信息,需sudo权限)示例:查看80端口占用: netstat -tulnp | grep :80输出……

    2025年7月1日
    32400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信