我有一个程序必须以 root 身份运行,并且需要由外部进程触发才能启动(它由构建过程完成触发)。它没有时间表,因此 cron 不是一个选项。我们最初有直接 ssh,但现在必须禁用它,所以这不是一个选项。有没有办法远程通知 root 在该机器上运行特定程序?不是任何程序,而是特定的授权程序?
我可以登录、使用 sudo 切换到 root 并手动运行它,没有任何问题。我们正在尝试在构建后自动执行部分安装过程。这是在 Redhat 6.4 下。
答案1
当您将其设为 SSH 时,请以另一个拥有密钥的用户身份将其设为 SSH,并允许该自动化用户以 root 身份使用 sudo 执行该特定命令。因此,您可以从构建服务器执行类似 的命令ssh sudo /scripts/myscript
。
答案2
答案3
编写一个脚本来监视命名管道(或网页或网络套接字)并在响应中执行您的代码。