使用passwd修改密码报错: 鉴定令牌操作错误。
下面对该错误可能出现的情况进行分析:
第一种:/usr/bin/passwd 的权限中没有添加s即SUID特殊权限
即:-rwxr-xr-x. /usr/bin/passwd
解决方案:chmod u+s /usr/bin/passwd
SUID的功能简单的说就是让组用户或其他用户在执行该文件是拥有文件所有者(own)权限,这里就是需要获取w(写)权限,这样才能将新密码写到/etc/shadow文件中
第二种: lsattr /etc/shadow
—-i——–e- /etc/shadow(文件的隐藏属性,具体不扩展),这里需要将i去掉,
用chattr -i /etc/shadow,同样/etc/group /etc/passwd也可能出现该情况。本次是用户/etc/shadow不能扩展,把i属性去掉就可以了。
同样的操作 lsattr /etc/passwd 检查一下是否有i权限
第三种:以上两种方法都不行的情况下在命令行输入 ll /etc/pam.d/passwd ,检查是否存在这个文件.
若是没有则手动创建,并且添加以下内容;若是有则修改成以下内容.
#%PAM-1.0
# This tool only uses the password stack.
password substack system-auth
-password optional pam_gnome_keyring.so use_authtok
password substack postlogin
pam是一种认证机制,归根到底也是与权限有关,这里就不详细解释了.