【问题标题】:How to use sudo programmatically via a pipe?如何通过管道以编程方式使用 sudo?
【发布时间】:2016-08-21 17:19:24
【问题描述】:

我正在尝试编写一个程序来执行系统的远程管理。为此,我发出 SSH 命令并通过管道以编程方式提供输入。我还捕获了他们的输出。

有些命令需要提升,所以需要发出ssh user@host "sudo apt-get install blah"等命令。

问题是,sudo 拒绝直接通过终端接受密码,除非它在其标准输入上找到 真正的终端。有什么方法可以让sudo 允许这样做吗?

【问题讨论】:

标签: ruby ssh sudo tty


【解决方案1】:

在这里找到:https://askubuntu.com/questions/470383/how-to-avoid-prompt-password-for-sudo

echo 'password' | sudo -S command

-S 接受来自标准输入的密码

【讨论】:

  • 嗯,这比我预期的要容易。
  • @SodAlmighty - 您可以查看 Kenster 的第二条评论中的链接,以讨论安全问题(在 cmets 中)。
猜你喜欢
  • 2015-04-14
  • 2013-02-16
  • 1970-01-01
  • 1970-01-01
  • 2017-08-11
  • 2015-09-10
  • 2020-11-09
  • 2018-11-17
  • 1970-01-01
相关资源
最近更新 更多