Есть ли какая-нибудь программа для запуска одной и той же команды на нескольких серверах с SSH из MacOSX?
iTerm2 может это сделать. Создайте одну закладку для каждого сервера и установите команду для каждой закладки на ssh. Затем используйте функцию «отправить ввод на все вкладки». Вы можете открыть сразу несколько закладок с помощью окна закладок (cmd-m). https://iterm2.com/index.html
tmux-cssh
стоит попробовать:
brew install tmux-cssh
tmux-cssh -u user host1 host2 host3 host4 host5
2019-12-19 Обновление
Как отмечено в комментариях, tmux-cssh
больше не устанавливается из homebrew. Но в любом случае, на самом деле это относительно простой сценарий оболочки, и вы получите его отсюда:
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
Взгляни на ClusterSSH. Я использовал это с большим эффектом на рабочей станции OSX 10.5, но не могу убедиться, что он работает правильно с 10.6. Я очень подозреваю, что все должно работать нормально.
Для этого есть ряд инструментов. Одним из примеров является Параллельный SSH. Похоже, вам нужно скомпилировать его из исходников для macos, но это должно быть хорошей отправной точкой.
это статья linux.com есть хорошее описание того, как работает pssh. Кроме того, комментарии к этой истории охватывают другие альтернативы, такие как Capistrano. Раньше для этой цели я использовал Tentakel, но похоже, что этот проект сдох.
Обратите внимание, что многие задачи, которые вы, возможно, захотите автоматизировать с помощью параллельного инструмента ssh, действительно являются хорошими кандидатами для автоматизации с помощью инструмента управления конфигурацией, такого как кукольный или повар или cfengine.
В итоге я использовал csshX:
Я думаю, что iTerm может это сделать (iterm.sf.net)
Вы можете использовать любое количество мультиплексоров ssh: например, dsh (оболочка танцора), pdsh. Проверьте MacPorts.
Или, возможно, несколько проще: для x in $ (cat hosts.txt); сделать ssh $ x; сделано
Существуют и более сложные вещи, такие как нож шеф-повара, капистрано, функ или руль.