我正在尝试正确使用 sudo 命令和 sudoers 文件,以便我可以以另一个用户身份运行命令。
我的 sudoers 文件设置如下:
beans ALL = (root,apache) NOPASSWD: /opt/renovations/var/script-*.sh
root、apache 和 beans 是 group beans 的一部分。
/opt 也有 755 个权限,而 /opt/renovations 目录及其子目录由 beans 用户和组拥有。
我试图作为 bean 运行的命令是:
sudo -n -u apache -i /opt/renovations/var/script-test.sh
-n: 是为了不提示我输入密码,因为这将由 cron 运行
-u: 是为了让我可以模拟 apache 用户
-i: 是为了我模拟登录和我的 .profile已加载。我需要这个才能访问 .profile 中的环境变量
我需要在我的 sudoers 文件中更新一些内容,以便可以做到这一点吗?