У меня есть сервер приложений, работающих на Ubuntu 12.04, который я Запуск и остановка при помощи ниже команд -Как выполнить команду на machineA с machineX через скрипт оболочки?
Для остановки сервера
[email protected]:/opt/kml$ /opt/kml/bin/kml_start_stop.sh stop
приложение для запуска приложения сервера
[email protected]:/opt/kml$ /opt/kml/bin/kml_start_stop.sh start
сейчас Я пытаюсь написать сценарий оболочки, который остановит и запустит мой сервер приложений, используя приведенную выше команду, но этот сценарий оболочки будет запущен с machineX
. И от machineX
мы можем войти в беспарольном без ввода любого пароля для пользователя david
в machineA
Например - От machineX
я могу сделать ssh [email protected]
без печатать свой пароль.
Ниже приведено то, что я начал. Все выглядит правильно?
#!/bin/bash
ssh [email protected]
/opt/kml/bin/kml_start_stop.sh stop
sleep 10s
/opt/kml/bin/kml_start_stop.sh start
Большое спасибо Джону. Даже Базиль также предоставлял то же самое. Я рад, что сегодня узнал еще одно. Еще один быстрый вопрос, предположим, что у меня есть несколько машинных имен, таких как 'machineA', на которых мне нужно выполнить' /opt/kml/bin/kml_start_stop.sh stop', а затем '/ opt/kml/bin/kml_start_stop.sh' начать с тот же сценарий оболочки, который будет работать только с 'machineX'. Каков наилучший способ сделать это? Я думал сохранить все имена машин сервера приложений в файле, а затем прочитать этот файл и выполнить команду? Если возможно, можете ли вы привести пример для этого? – john
@ user2809564: Я обновил свой ответ, чтобы добавить цикл, как вы просили. –
Спасибо, Джон, так что этот файл 'hostList.txt' будет иметь каждую строку как имя машины? – john