尝试将(不存在的)用户添加到我的 CentOS 系统时返回useradd: user example exists. 我可以成功地手动将用户添加到 /etc/passwd 和 /etc/shadow,但这种解决方法是一件坏事。用户存在于 LDAP 中,但 PAM 未使用 LDAP 进行身份验证。添加其他用户工作正常。我难住了。
预计到达时间:
[root ~]# userdel example
userdel: error deleting password entry
userdel: error deleting shadow password entry
[root ~]# useradd example
useradd: user example exists
[root ~]# su example
bash-3.2$ whoami
example
bash-3.2$ groups example
example : Users
bash-3.2$ cd
bash: cd: /home/example: No such file or directory
bash-3.2$
Run Code Online (Sandbox Code Playgroud) 最近,我需要向我们的 CentOS 服务器添加一个用户。出于某种原因,我无法使用 useradd 或 userdel 添加或删除它们,因此我手动编辑了 /etc/passwd 和 /etc/shadow,添加了它们。然后我能够以 root 用户身份使用 passwd 来更改他们的密码,一切都很好。
或者我是这么想的。现在,一些用户根本无法通过 SSh 登录 - 当提示输入密码时,他们会Permission denied, please try again.尝试 3 次,然后Permission denied (publickey,gssapi-with-mic,password).
这可能与 /etc/passwd 和 /etc/shadow 的更改无关 - 删除对这些文件的更改并不能解决问题。
编辑 1:新用户可以通过 ssh 登录,但一些老用户(包括 root)不能。问题也仅限于 ssh - 登录物理机并使用 su,两者都可以正常工作。