文档首页/ 弹性云服务器 ECS/ 故障排除/ 密码与密钥对/ Linux操作系统执行passwd命令重置密码失败提示:Authentication token manipulation error
更新时间:2024-08-15 GMT+08:00

Linux操作系统执行passwd命令重置密码失败提示:Authentication token manipulation error

问题现象

root用户用passwd命令修改管理员用户以及普通用户的密码时失败,提示passwd:Authentication token manipulation error。

根因分析

出现该问题通常是密码文件的属性的问题导致,也有可能是根目录空间满。

执行以下命令查看存放用户和密码的文件(/etc/passwd和/etc/shadow)属性。

lsattr /etc/passwd /etc/shadow

如上图所示,/etc/passwd和/etc/shadow文件中有i属性,"i"的文件属性表示该文件不能修改:它不能被删除或重命名,无法为此创建任何链接文件,不能将任何数据写入该文件。只有管理员用户可以设置或清除此属性。

1.如果设置了'a'属性的文件只能在append(只允许增加记录)写作模式。只有管理员用户可以设置或清除此属性。

CAP_LINUX_IMMUTABLE功能可以设置或清除这个属性。

其他文件属性可以执行以下命令查看chattr使用手册。

chattr

2.如果lsattr结果中没有限制增加或者修改的属性,则可能为根分区空间不足,可以查询根分区使用率。

df -h

处理方法则为删除根分区下不需要的文件。

处理方法

  1. 用chattr命令将i权限撤销,然后再修改密码。
    • 如果文件属性为"i",执行以下命令。

      chattr -i /etc/passwd /etc/shadow

    • 如果文件属性为"a",执行以下命令。

      chattr -a /etc/passwd /etc/shadow

  1. (可选)如果对修改过属性的文件有安全要求需要设置相应的属性,请重新设置相应的属性。
    • 如果设置文件属性为"i",执行以下命令。

      chattr +i /etc/passwd /etc/shadow

    • 如果设置文件属性为"a",执行以下命令。

      chattr +a /etc/passwd /etc/shadow

    查看修改后的文件属性,执行以下命令。

    lsattr /etc/passwd /etc/shadow