Добрый день. Нужна помощь: Есть в сети несколько серверов. Надо производить stop|start|status|restart служб с одного сервера на всех остальных. Написал скрипт:
#!/bin/bash
stat=$1
user='USER1'
passwd='PASSWD'
APP=('192.168.1.3' '192.168.1.4' '192.168.1.5' '192.168.1.6')
if [ -z "$stat" ]
then
stat='status'
fi
quest="echo 'PASSWORD' | sudo -S systemctl "$stat" wildfly"
for i in ${APP[@]}
do
sshpass -p $passwd ssh -l $user $i $quest
echo "server "$i" "$stat
done
проблема в том что на серверах включен запрос пароля для sudo, и выключать это не хочу, сервера смотрят в интернет. Собственно скрипт работает при запросе статуса, а вот при отправке команд stop|start приходит ответ введите пароль. Ткните где я не так что сделал или может направите на «готовый» похожий скрипт. Ну или подскажите какое другое решение.
спасибо.
ОС CentOS.