我怎样才能允许一个用户su到另一个用户不允许root访问?

我希望允许某些用户访问其他用户帐户,而不必知道该帐户的密码,但不允许访问任何其他用户帐户(即root)。
例如,我想让汤姆DBA su到oracle用户,而不是tomcat用户或root。

我想这可以用/ etc / sudoers文件来完成 – 可能吗? 如果是这样,怎么样?

是的,这是可能的。

/ etc / sudoers中 ,紧跟在equals之后的项是命令将被允许执行的用户。

tom ALL=(oracle) /bin/chown tom * 

用户(tom)可以inputsudo -u oracle / bin / chown tom / home / oracle / oraclefile

join你的/ etc / sudoers之类的东西

 tom ALL=(oracle) ALL 

然后,用户tom应该能够使用sudo以-u选项作为用户oracle运行,而不会让tom

即得到一个壳用户甲骨文(好吧,考虑到你的sudo是新的,有-i选项)。

 sudo -u oracle -i 

要只提供问题中的function,请将以下内容添加到/ etc / sudoers中:

 tom ALL=(oracle) /bin/bash 

那么汤姆可以:

 sudo -u oracle bash -i