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
处理方法则为删除根分区下不需要的文件。
处理方法
- 用chattr命令将i权限撤销,然后再修改密码。