在 root 模式下执行的 shell 脚本

在 root 模式下执行的 shell 脚本

我需要执行包含应在根模式下运行的命令的脚本。如果我放在sudo命令之前,那么当我运行脚本时,我会看到权限被拒绝(我没有机会写入密码)。如果我使用 sudo 运行脚本,则会写入 - 命令未找到。如果我把sudo su脚本放在开头,那么在输入密码后什么也不会发生。脚本仅在退出 root 模式时执行。如何制作这样的脚本?谢谢。

答案1

您可以通过 sudo 将脚本设置为不需要密码,例如 /etc/sudoers

user   ALL=(ALL:ALL) NOPASSWD: /path/to/your/script

答案2

(作为新答案发布,因为我无法发表评论并且编辑太小)

您可以使用 结束命令,以""防止用户使用任意参数运行该命令。

user ALL=(ALL:ALL) NOPASSWD: /path/to/your/script ""

现在sudo /path/to/your/script可以工作但sudo /path/to/your/script foo bar失败。

相关内容