解决"鉴定故障"问题在微软Azure或AWS虚拟机上的CentOS 7.0
问题描述
在使用微软Azure或AWS虚拟机上的CentOS 7.0时,可能会遇到"su:鉴定故障"的问题,这通常是由于配置或权限问题导致的。
解决方案
步骤1:检查/etc/pam.d/su
文件
我们需要检查/etc/pam.d/su
文件中的配置,使用以下命令打开文件:
sudo vi /etc/pam.d/su
确保文件中包含以下内容:
auth required pam_wheel.so use_uid auth required pam_deny.so account required pam_access.so account required pam_deny.so session required pam_permit.so
如果缺少任何一行,请添加并保存文件。
步骤2:检查用户权限
确保要切换到的用户存在于/etc/passwd
文件中,使用以下命令查看用户列表:
cat /etc/passwd
确保要切换到的用户在列表中,如果不在,请使用以下命令创建用户:
sudo useradd m 用户名
将用户名
替换为您要创建的用户的用户名。
步骤3:检查/etc/group
文件
确保要切换到的用户属于wheel
组,使用以下命令查看wheel
组的成员:
grep wheel /etc/group
确保要切换到的用户在wheel
组成员列表中,如果不在,请使用以下命令将用户添加到wheel
组:
sudo usermod aG wheel 用户名
将用户名
替换为您要添加到wheel
组的用户的用户名。
步骤4:重新尝试切换用户
完成上述步骤后,尝试再次使用su
命令切换到目标用户,如果问题仍然存在,请查看系统日志以获取更多详细信息。
相关问题与解答
Q1: 如果按照上述步骤操作后,仍然无法解决问题,应该如何排查?
A1: 如果问题仍然存在,请检查系统日志以获取更多详细信息,可以使用以下命令查看相关日志:
sudo grep su /var/log/auth.log
根据日志中的提示,进一步排查问题。
Q2: 如何在不使用su
命令的情况下切换用户?
A2: 可以使用exec sudo u 用户名 command
命令切换用户并执行特定命令,将用户名
替换为您要切换到的用户的用户名,将command
替换为要执行的命令。
exec sudo u username ls
这将以username
用户的身份执行ls
命令。
原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/371341.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复