Linux 服务器上的用户密码丢失:如何重置?

Cat*_*aro 17 password passwd

在服务器上,用户 16040 丢失了密码。我有 root 的密码,但没有用户 16040 的密码。我如何重置他的密码?

使用passwd 16040,unix 会询问我当前没有的密码。是否有在没有当前密码的情况下重置用户密码的命令?

passwd 16040
Changing password for 16040.
Current password for 16040@friesbie.com:
Run Code Online (Sandbox Code Playgroud)

小智 24

如果您passwd 16040以 root 身份运行,则不会要求您输入当前密码。

更改密码后,您应该考虑发出chage -d 0 16040. 这将设置密码的最后更改日期远在过去;假设密码在您的系统上设置为过期,这将强制用户在登录后更改密码。这使他们有机会选择只有他们知道的密码。


pep*_*nas 3

您应该以passwd 16040root 身份(sudo passwd 16040如果您的用户位于 sudoers 文件中)来更改他/她的密码。它不会询问您当前的信息。

或者,如果您可以物理访问该框,则可以附加init=/bin/bash为内核参数以获得 root 访问权限,然后发出passwd 16040.

  • 内联命令中的提示相当令人费解,并且很容易被误解为命令的一部分。请仅在块引号中使用提示。此外,“# >”相当不常见,这里的“>”很容易被误解为命令的一部分——常见的做法是对“root”shell 使用简单的“#”,对非 root shell 使用“$”。 (3认同)