启动脚本作为特定用户Ubuntu运行

时间:2014-04-30 21:34:25

标签: bash ubuntu startup

所以我在Ubuntu上有一个用户userA。当机器启动时,我想在/etc/rc0.d中添加一个名为startService的脚本

从该脚本内部,它将使用三个脚本

启动多个服务
startServiceA.sh
startServiceB.sh
startServiceC.sh

我希望这三个脚本可以从userA启动,而不是root。我怎么做到这一点?

2 个答案:

答案 0 :(得分:1)

您可以使用以下命令:su,sudo,runuser

请务必查看手册页。

此网站也可以为您提供帮助 http://www.cyberciti.biz/open-source/command-line-hacks/linux-run-command-as-different-user/

答案 1 :(得分:1)

您可以使用以下命令在启动脚本中运行命令:

sudo -u <username> ....

注意:您需要在文件中为每个要作为另一个用户运行的命令开头。我建议在脚本顶部创建一个变量,如下所示:

SUDO="sudo -u <username>"

然后就这样做:$SUDO <command>