在CentOS上,除了root以外,不能使用su

我可以使用sudo权限的pipe理员帐户SSH到我的服务器(CentOS 5.9):

$ ssh admin@myserver Last login: Wed Feb 27 19:23:11 2013 from [IP ADDRESS] [admin@myserver ~]$ 

那么我可以su根:

 [admin@myserver ~]$ sudo su root [sudo] password for admin: [root@myserver admin]# 

但是我不能告诉另外一个用户,su命令不会告诉我为什么:

 [admin@myserver ~]$ sudo su anotheruser [admin@myserver ~]$ whoami admin 

任何想法,为什么我可以扎根,而不是其他用户?

我怎么能告诉我为什么它不做我想做的事?

/etc/sudoers授予admin什么权限?

另外,作为root ,你总是可以su - anotheruser 。 也许还有一个额外的步骤,但不知道你的sudoers文件的任何事情,这将工作。

如果对其他人有用:我只是遇到了相同的症状,但答案与sudoconfiguration无关。

相反,它关心哪个用户,我试图su 。 目标用户是一个服务伪用户(jenkins),它的shell是/ bin / false。 解决的办法是将shell更改为有效的(使用chsh )。

检查/var/log/security/var/log/auth.log

你为什么用sudo来使用su ? 除非您更改标准ACL,否则不需要这样做。

如果您使用sudo ,那么问题可能与您的sudoer文件有关。 确认你有正确的configuration。