Я хотел бы запустить один скрипт оболочки bash на двух или более компьютерах одновременно.Можно ли запустить один сценарий оболочки bash одновременно на нескольких компьютерах? Я помещаю этот сценарий оболочки в Centos 5.5, и другие машины запускают это одновременно.

1 ответ1

2

Моя лучшая ставка будет использовать SSH. Для этого вам, вероятно, необходимо обменяться ключами между вашей главной машиной (на которой находится оригинальный скрипт) и вашими подчиненными (те, которые должны запускать скрипт). Т.е. вам нужно выполнить ssh-keygen на ведущем устройстве и добавить содержимое ~/.ssh/id_rsa.pub (или id_dsa.pub) на главном устройстве к ~/.ssh/authorized_keys на каждом ведомом устройстве. Затем вы можете запустить скрипт, сидящий на ведущем устройстве на каждом подчиненном устройстве следующим образом:

ssh remote_user@slave_machine 'bash -s' < local_script.sh

(который украден из этого ответа).
Если у вас есть список подчиненных машин, вы можете повторить это на каждом из них следующим образом:

slaves = slaveA slaveB ...
for slave in slaves; do
    ssh remote_user@${slave} 'bash -s' < local_script.sh
done

Надеюсь, это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .