以用户ops登录虚拟机,提示密码已过期,需要更换密码。更换密码失败,报错“Authentication Token manipulation error”【身份验证令牌操作错误】。我们用另一个账户密码登录上机器,查看问题
可能原因:
根目录空间满了
【排查方法】df查看分区使用情况
【处理方法】删除根目录下无用的文件
【tips】du命令可查看当前目录下的空间占用情况
inode满了
【排查方法】df -i查看,若根目录下的inode使用情况为100%
密码文件(/etc/passwd和/etc/shadow)不同步
【排查方法】cat /etc/passwd cat /etc/shadow对比两个文件中,登录用户ops的信息是否有差异,若有则不同步
【处理方法】pwconv命令,将/etc/passwd文件投影到/etc/shadow文件中,根据passwd文件修改shadow文件
密码文件(/etc/passwd和/etc/shadow)属性设置为 不可被修改
【排查方法】lsattr /etc/passwd /etc/shadow
查看存放用户和密码的文件 属性,若有i属性,表明该文件不能被修改:无法被删除或重命名,无法为此创建任何链接文件,不能将任何数据写入该文件。若有a属性,表明该文件不能被删除、改名、原有内容无法修改,只能追加内容。
【处理方法】chattr -i /etc/passwd /etc/shadow用chattr命令将i/a权限撤销
【tips】lsattr命令列出文件或目录的隐藏权限,chattr命令修改文件或目录的隐藏权限
排查过程:
查看分区使用情况,发现根目录使用率为100%,猜测是原因1
锁定问题并解决:
根目录空间满了,删除/目录下无用文件夹,用passwd命令修改密码,成功。