我的普通用户帐户在 CentOS 中无法正常工作,但以 root 身份登录可以正常工作。我应该做什么来调试/解决问题?
答案1
检查日志以查看是否有任何值得注意的消息。尝试重置您的密码,并不是说您不知道,但重置可以解决一些可能的问题。然后检查您的/etc/passwd
文件,查找包含您的用户名的行,看看是否有任何异常,即您的 shell 被设置为“nologin”或“false”。最后,您可以删除用户帐户,然后将其添加回来。
答案2
- 检查您的日志(/var/log/messages、/var/log/security)
- 检查您的用户是否具有有效的登录 shell
- 检查输出
faillog -u $USER
(并使用 pam_tally 重置) - 检查 /etc/nologin 是否存在
- 检查输出
chage -l $USER
- 将密码重置为已知的简单值,然后重试
- 在此发布您执行上述步骤时发生的情况以及日志中现在显示的内容的详细信息
答案3
您可能没有在 useradd 中使用 -p 选项,或者您可能像我一样,使用 -p 选项提供了纯文本密码,认为这样可以。此时最好尝试的是 passwd 命令。其格式为:
passwd [user]
其中 [user] 是帐户的用户名。系统会要求您输入新密码并进行验证。出于安全目的,密码不会在您键入时显示。