![需要在多个linux服务器上安装相同的脚本](https://linux22.com/image/190873/%E9%9C%80%E8%A6%81%E5%9C%A8%E5%A4%9A%E4%B8%AAlinux%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%AE%89%E8%A3%85%E7%9B%B8%E5%90%8C%E7%9A%84%E8%84%9A%E6%9C%AC.png)
请原谅我的无知,但我对 Linux 和服务器管理领域非常陌生
使用案例场景 -
我有 20 台 Linux 服务器,我需要在所有这些服务器上安装相同的包/脚本。挑战在于,在安装此脚本的过程中,有几个步骤会提示输入某些内容(例如密码、是/否选项等)。
研究解决方案 -
我发现了一些关于如何使用 ansible 跨多个远程服务器发送命令的视频,但是当安装在远程服务器上运行时,他们会提示输入密码或 Y/N 问题以便继续安装,并且存在以下挑战:完成后结束。
问题
除非我手动通过 SSH 连接到每个服务器并输入输入,否则我找不到能够执行此操作的解决方案。
谁能帮我?另请记住,我对此很陌生,因此我们将非常感谢任何详细信息的帮助。
答案1
最好的方法是找到不提示的安装程序调用。许多安装程序都有自动模式,您可以在其中提供命令行选项和/或配置文件,然后它们将以“无人值守”模式运行,不会提示用户问题。
如果这个特定程序/包/脚本没有可用的无人值守模式,那么您应该放弃 Ansible 的想法,因为 Ansible 在非常基本的级别上与执行期间的提示不兼容,并查看类似expect
.您可以将 Ansible 与expect
脚本结合起来,但这可能会付出更多的努力而不值得回报。