如何自动化包含 sudo 命令的 bash 脚本?

Kri*_*mod 6 permissions bash root sudo

我在 bash 脚本中添加了一些命令,这些命令需要 root 权限。然后我在这些命令中添加了 sudo 关键字。作为正常方式,我将此脚本添加到 crontab 文件中以自动执行我的任务。

当它尝试自动运行时,有什么方法可以授予 root 访问权限?

注意:我使用 crontab 来自动化我的脚本。

wal*_*tor 11

是的。阅读man sudoers sudoedit。您可以授予单个用户无密码访问一组命令的权限。您可以为访问指定一个日期范围,因此如果您的脚本仅在 03:00 和 03:15 之间运行,则您只能允许访问。


ste*_*ver 9

除非您需要脚本中的其他命令以非 root 用户身份运行,否则最简单的选择是sudo从脚本内部删除命令,并通过将其添加到 root 的 crontab 文件 ( sudo crontab -e) 或通过在用户字段中/etc/crontab指定的系统范围的文件root

如果您确实需要以非 root 用户身份运行某些命令,那么您可以使用sudo -u <otheruser>