我有必须以 user2 身份运行的 script.sh。但是,此脚本只能在我的应用程序中的 user1 下运行。
我想运行以下命令:
su user2 -C script.sh
但无需密码也能运行。
我也希望这是非常严格的,因为 user1 只能在 user2 下运行 script.sh 而不能运行其他任何东西。
我已经尝试使用 sudoers 文件执行此操作,但经过数小时的尝试后,我一直感到困惑。
如果有人可以提供一个明确的示例来说明如何实现这一点(而不是像使用 sudoers 这样的通用示例),我们将不胜感激。
最佳答案
尝试运行:
su -c "Your command right here" -s /bin/sh username
这将作为用户名运行命令,前提是您有权以该用户身份使用 sudo。
https://stackoverflow.com/questions/6905697/
相关文章:
linux - 在 Ubuntu 中轻松更改 $JAVA_HOME
python - matplotlib 错误 - 没有名为 tkinter 的模块
python - Argparse:在 "optional arguments"下列出的必需参数?
python - 如何在 Python 中将字符串转换为 utf-8
c - 在 Linux 中测量时间 - 时间 vs 时钟 vs getrusage vs clock
linux - 如何在 Apache 服务器上自动将 HTTP 重定向到 HTTPS?