繁体   English   中英

需要使用sudo su-在Unix shell脚本中

[英]Need to use sudo su - in Unix shell script

我是初学者,需要在脚本的一个命令行中为两个不同的用户使用sudo su -pwd (我以pwd为例;具体命令并不重要。)并且我正在使用sudo su - user -c pwd命令。 切换到一个用户时此命令有效,但切换到另一个用户时不起作用。

例如:-

$ sudo su - ora -c pwd
/oracle/
$ sudo su - adm -c pwd
Sorry, user myuser is not allowed to execute '/usr/bin/su - adm -c pwd' as root on server.
$

我如何使它也适用于“ adm”用户?

sudo用于和其他人一起运行命令。 默认情况下,它以root用户身份运行命令。 您还可以提供-u选项以另一个用户身份运行命令。 您确实不需要将sudo和su一起使用,因为它们可以完成类似的工作。 Sudo以更加可控和可配置的方式完成了这项工作。

可以配置Sudo来控制:

  • 谁可以使用它。
  • 他们可以运行哪些命令。
  • 他们可以作为谁来运行它们。
  • 他们这样做时是否需要提供密码。

您一次只能运行一个命令,因此,如果您需要一起做几件事,则需要编写一个脚本。 另外,您也可以将它们链接在一个衬纸中。 或者最终,您可以以所需的用户身份运行Shell。 例如:

sudo bash

我认为在您的情况下,您可能要使用:

sudo -u adm anycommand

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM