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. 使用susudo -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核心工具passwdchpasswd的官方手册(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

相关推荐

  • 如何不中断服务?

    推荐方法:使用 logrotate 自动轮替日志适用场景:生产环境长期维护原理:Linux 内置的 logrotate 工具通过定时任务(cron)自动压缩、归档或删除旧日志,避免手动操作风险,操作步骤:编辑配置文件 sudo vim /etc/logrotate.conf # 全局配置sudo vim /et……

    2025年7月31日
    15400
  • 如何查看Linux系统架构?

    使用 uname 命令(最常用)uname 是Linux核心工具,直接显示系统硬件和内核信息:uname -m结果解读:x86_64:64位Intel/AMD处理器(主流架构),i386 或 i686:32位Intel处理器,aarch64:64位ARM处理器(常见于树莓派、手机),armv7l:32位ARM处……

    2025年7月30日
    15400
  • 如何正确安装util-linux?

    util-linux是Linux系统中不可或缺的核心工具集,包含了大量基础系统管理工具,如磁盘分区工具fdisk、文件系统挂载管理mount、块设备信息查看lsblk、系统登录日志last等,这些工具是系统日常运维、故障排查和设备管理的基础,因此正确安装util-linux至关重要,以下是详细的安装方法,覆盖主……

    2025年8月21日
    15400
  • 为什么cp命令会覆盖文件?

    在Linux系统中,复制文件是最基础且频繁的操作之一,无论是日常管理、数据备份还是脚本编写,掌握高效的文件复制方法都至关重要,本文将详细解析Linux中多种文件复制方式,涵盖命令行工具(如cp、rsync)和图形界面操作,并附注意事项及最佳实践,cp(copy)是Linux内置的复制命令,语法如下:cp [选项……

    2025年7月23日
    16900
  • Linux如何停止运行中的程序?常用命令及操作方法有哪些?

    在Linux操作系统中,程序以进程的形式运行,停止程序本质上是终止对应的进程,Linux提供了多种终止进程的方式,适用于不同的场景(如前台进程、后台进程、系统服务等),掌握这些方法能帮助用户高效管理系统资源,本文将详细介绍Linux中停止程序的各类方法,并结合实例说明操作步骤和注意事项,Linux进程终止的基本……

    2025年9月10日
    14600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信