从 MacOSX 使用 SSH 在多台服务器中运行相同的命令

从 MacOSX 使用 SSH 在多台服务器中运行相同的命令

是否有某个程序可以通过 MacOSX 在多个带有 SSH 的服务器中运行相同的命令?

答案1

iTerm2 可以做到这一点。为每个服务器创建一个书签,并将每个书签的命令设置为 ssh 。然后使用“将输入发送到所有选项卡”功能。您可以使用书签窗口 (cmd-m) 一次打开一堆书签。https://iterm2.com/index.html

答案2

https://github.com/peikk0/tmux-cssh值得一试。不是 brew 可安装的,但它只是一个简单的 shell 脚本https://raw.githubusercontent.com/peikk0/tmux-cssh/master/tmux-cssh— 所以:

curl -O https://raw.githubusercontent.com/peikk0/tmux-cssh/master/tmux-cssh
chmod 755 tmux-cssh
./tmux-cssh -u user host1 host2 host3 host4 host5

tmux-cssh 中同时与 5 个主机建立 ssh 连接的平铺视图

答案3

看一眼集群SSH。我在 OSX 10.5 工作站上使用它,效果很好,但无法验证它在 10.6 上是否正常工作。我非常怀疑它应该可以正常工作。

答案4

有许多工具可以做到这一点。一个例子是并行 SSH。看起来你必须从 macos 的源代码进行编译,但它应该是一个很好的起点。

linux.com 文章很好地描述了 pssh 的工作原理。此外,该故事的评论还涵盖了其他替代方案,例如卡皮斯特拉诺。我曾经为此目的使用过 Tentakel,但看起来该项目已经失败了。

请注意,您可能希望使用并行 ssh 工具自动执行的许多任务,实际上都非常适合使用配置管理工具进行自动化,例如木偶或者厨师或者CF引擎

相关内容