所以我在Ubuntu上有一个用户userA。当机器启动时,我想在/etc/rc0.d中添加一个名为startService的脚本
从该脚本内部,它将使用三个脚本
启动多个服务startServiceA.sh
startServiceB.sh
startServiceC.sh
我希望这三个脚本可以从userA启动,而不是root。我怎么做到这一点?
答案 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>