我使用 smitty 在 AIX 7.1 中新添加了一个用户名 perfmgr,但是当我尝试更改密码时,它输出如下错误:
# passwd perfmgr
Changing password for "perfmgr"
3004-616 User "perfmgr" does not exist.
3004-709 Error changing password for "perfmgr".
#
我使用 root 来运行上述命令。
这很奇怪,因为我可以看到这个用户 perfmgr 在 /etc/passwd 下可用:
# grep perfmgr /etc/passwd
perfmgr:*:208:1::/space/perfmgr:/usr/bin/ksh
#
然后我尝试使用 smitty 删除该用户,但同样的错误再次出现,
用户“perfmgr”不存在。
由于无法找到删除或修复此用户的正确方法,因此需要针对此问题的建议。
答案1
我发现了这个问题,问题是 /etc/security/user 文件下没有用户 perfmgr 的注册表行。
perfmgr:
admin = false
registry = files
但是,在此之前,我使用以下命令修复了 perfmgr 与其他文件不同步的另一个问题,
pwdck -y perfmgr
然后,运行此命令后,我会继续在 /etc/security/user 文件下手动创建“registry=files”行,如上所述。
希望这对遇到此问题的其他用户有所帮助。
答案2
从类似的 Stackover 流程中复制我的评论问题。
您使用 LDAP 吗?如果是,则可能正在 LDAP 中搜索用户。我们刚刚遇到了类似的问题,使用显式-R files
帮助。即使您不使用 LDAP,也可以使用-R
:passwd -R files perfmgr
或passwd -R compat permgr
。希望这能有所帮助。