Linux

無法使用 useradd 添加使用者

  • September 10, 2019

嘗試向我的 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$ 

如果您在/etc/nsswitch.conf(例如passwd: files ldappasswd:compat passwd_compat:ldap等)中包含 LDAP,則足以getent passwd查看useraddLDAP 條目。

這兩個實用程序都與 PAM 無關,並且即使 PAM 對 LDAP 一無所知,它們也能愉快地辨識 LDAP 條目。

順便說一句,如果你有nscd執行,記得更改後重新啟動它nsswitch.conf

停止 sssd 服務後,我能夠刪除使用者並再次添加他(我不知道它在伺服器上)

service sssd stop
deluser -f MyUser

引用自:https://serverfault.com/questions/350291