当前位置: 首页>>技术教程>>正文


linux – 我无法在Ubuntu上更改用户的密码

, , ,

问题描述

我想更改120个用户的密码。所以我写了sudo echo 'user:passwd' | chpasswd

但我有个讯息

chpasswd: (user) pam_chauthtok() failed, error:
Authentication token manipulation error
chpaswd (line 1, user) password not changed

并且我尝试了使用文本文件的另一种方式,但是我得到了相同的消息。

我不能解决这个问题。

最佳方案

更改密码的常用方法是使用passwd(1)命令。

如果要使用chpasswd(8)usermod(8),则应仔细使用RTFM。

确保给定的密码与系统配置兼容。并且sudo应该适用于chpasswd命令,因此您可能需要

echo 'user:passwd' | sudo chpasswd

在您的情况下,sudo echo 'user:passwd' | chpasswdsudo仅应用于echo,这是不正确的。

次佳方案

恕我直言,出于安全考虑,最好不要将凭据保存在bash历史记录中。

我们可以将chpasswd命令与文件一起使用,而不是通过命令行传递。选择您喜欢的文本编辑器来编辑文件。

vim passwd

然后输入user:password,保存并使用:wq退出

cat passwd | sudo chpasswd

然后,您应该删除文件:

rm passwd

这样,您就无需使用终端来传递您的凭据。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/10980.html,未经允许,请勿转载。