我正在编写一个自动安装邮件服务器的脚本,但是我的一些代码必须从源代码编译,因为它不在存储库中。我对此没有任何问题,但是,我不知道从以 root 身份运行的脚本中最好和最安全的方法是什么。我知道我必须创建一个非特权用户来进行构建,但是以下哪一个是推荐的方法?
1
su -c "command" - builduser
su -c "othercommand" - builduser
2
sudo -u builduser command
sudo -u builduser othercommand
3
su -c "externalscriptwithcommands.sh" - builduser
理想情况下,我想在执行后以 root 身份继续我的脚本;我觉得选项 3 可能是最理想的,但我希望您能对此提出意见。