linux下如何修改用户密码

Linux下,可通过passwd 用户名命令修改用户密码,按提示输入新密码

修改当前用户的密码

如果你是普通用户,想要修改自己的密码,可以使用以下命令:

passwd

系统会提示你输入当前密码,然后要求输入新密码并确认。

Current password: ********
New password: *********
Retype new password: *********

注意事项:

  • 新密码需要符合系统的密码复杂度要求(如长度、包含特殊字符等)。
  • 如果输入的新密码与当前密码相同,系统会提示错误。

修改其他用户的密码(需要root权限)

如果你有root权限或使用sudo命令,可以修改其他用户的密码,修改用户username的密码:

sudo passwd username

系统会提示你输入root密码,然后要求输入新密码并确认。

[sudo] password for your_username: ********
New password: *********
Retype new password: *********

注意事项:

  • 只有root用户或具有sudo权限的用户才能修改其他用户的密码。
  • 修改其他用户的密码时,不需要知道该用户的当前密码。

使用chpasswd命令批量修改密码

chpasswd命令可以从标准输入读取“用户名:密码”对,并批量修改密码,修改用户username的密码为newpassword

echo "username:newpassword" | sudo chpasswd

优点:

  • 适合批量修改密码或自动化脚本。
  • 不需要交互式输入密码。

注意事项:

  • 确保输入的密码符合系统要求。
  • 使用chpasswd时,密码以明文形式传输,注意安全性。

通过/etc/shadow文件直接修改密码

/etc/shadow文件存储了用户的密码信息(以加密形式),可以通过编辑该文件修改密码,但不建议直接操作,除非必要,修改用户username的密码:

  1. 打开/etc/shadow文件:
    sudo nano /etc/shadow
  2. 找到对应用户的行,格式如下:
    username:$6$...$encrypted_password:...
  3. 使用工具生成新密码的加密值,例如使用openssl
    openssl passwd -6 newpassword

    输出类似:

    username $6$random_salt$encrypted_password
  4. /etc/shadow中对应行的加密密码替换为新值。
  5. 保存并退出。

注意事项:

  • 直接编辑/etc/shadow文件可能导致系统无法正常登录,建议备份文件。
  • 推荐使用passwdchpasswd命令修改密码,避免手动操作。

强制用户首次登录时修改密码

在某些场景下,管理员可能希望用户首次登录时强制修改密码,可以通过设置/etc/shadow文件中的密码字段为特殊值实现,将用户username的密码字段设置为:

sudo usermod -p '!!' username

用户首次登录时,系统会提示修改密码。


常见问题及解决方法

问题 解决方法
修改密码时提示“Authentication token manipulation error” 检查是否有足够的权限,或者尝试重新登录后重试。
新密码不符合复杂度要求 阅读系统提示,确保新密码符合长度、字符类型等要求。
忘记root密码 需要进入单用户模式或使用救援模式重置密码。

FAQs

如何查看当前用户的密码有效期?

在Linux中,可以使用chage命令查看或修改密码有效期,查看用户username的密码信息:

sudo chage -l username

输出包括密码有效期、最后一次修改时间等信息。

如何设置用户密码永不过期?

使用chage命令可以设置密码永不过期,为用户username设置密码永不过期:

sudo chage -I -1 -m 0 -M 99999 -E -1 username
  • -I -1:禁用密码过期功能。
  • -m 0:允许空密码(不推荐)。
  • -M 99999:设置密码最大年龄为99999天(相当于永不过期)。
  • -E -1:禁用账户过期功能。

小伙伴们,上文介绍linux下如何修改用户密码的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

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

(0)
酷番叔酷番叔
上一篇 2025年8月15日 22:05
下一篇 2025年8月15日 22:12

相关推荐

  • Linux C如何输入整形变量?

    在Linux C程序中,输入整形变量是常见的操作,主要通过标准输入函数实现,以下是几种常用方法的详细说明,包括函数用法、注意事项及示例代码,使用scanf函数直接输入scanf是C标准库中最常用的输入函数,通过格式控制符%d(或其他修饰符)读取整形数据,其基本语法为:int scanf(const char……

    2025年8月25日
    8400
  • Linux如何打开FTP服务?

    在Linux系统中,操作FTP(File Transfer Protocol,文件传输协议)通常包括两种场景:作为客户端连接远程FTP服务器上传/下载文件,或作为服务器搭建FTP服务供其他客户端访问,本文将详细介绍Linux下这两种场景的操作方法,涵盖命令行工具和图形化工具的使用,以及FTP服务器的配置步骤,L……

    2025年9月30日
    7100
  • 如何避免临时目录名称冲突?

    在Linux系统中,文件类型由系统内核根据文件元数据自动判定,无法直接通过命令将普通文件()修改为目录(d),但可通过创建新目录并迁移数据的方案实现类似效果,具体操作如下:核心原理Linux文件类型由元数据中的mode字段决定(通过ls -l首字符查看)::普通文件(Regular File)d:目录(Dire……

    2025年7月8日
    11000
  • Linux系统如何登录root用户?详细操作步骤与方法是什么?

    在Linux系统中,root用户是超级用户,拥有对系统的完全控制权限,包括修改系统文件、安装软件、管理用户等操作,由于权限过高,直接使用root用户登录存在较大安全风险,因此通常推荐普通用户通过sudo命令临时获取root权限,但在某些特殊场景下(如系统维护、紧急修复),仍需要掌握root用户的登录方法,本文将……

    2025年9月29日
    14500
  • Debian/Ubuntu常见问题如何快速解决?

    在Linux系统中使用FTP(文件传输协议)是一种常见的文件传输方式,但需注意其明文传输的安全风险,以下是详细操作指南,涵盖命令行与图形界面两种方式:基础准备安装FTP客户端# CentOS/RHELsudo yum install ftp lftp安装FTP服务器(如自建服务)# 安装vsftpd(常用服务端……

    2025年7月25日
    9600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信