Запуск файла скрипта над SSH через SUDO

Поиграв с этим сценарием, я понял, что проблема с кодировкой была в исходном файле, который я экспортировал из окружения Windows.
Я повторил ту же процедуру, на этот раз с аргументом "сохранить как", выбрал тип кодировки UTF8, и файл выглядел нормально в Linux, а после изменения и экспорта обратно в Windows выглядел нормально в блокноте Windows тоже.

0
28.04.2018, 00:38
4 ответа

Me di cuenta poco después de la publicación.

COMMAND_SSH="sudo -i <<'EOF'"`cat./unifyServiceNode.sh``echo -e '\nEOF'` ;;

ssh -n -tt centos@$HOST "$COMMAND_SSH"; ## -n prevents reading the input. -tt forces TTY.

Parece que los 'adicionales alrededor del comando SSH fueron el problema, y ​​también necesitaba hacer la nueva línea a través de echo.

Sin embargo, no estoy muy seguro de si se trata de un truco de la suerte o de la forma correcta de hacerlo. Para ser honesto, estoy completamente perdido en la evaluación de citas de Bash:)

3
28.01.2020, 02:24

Coloque los comandos que necesita ejecutar en un script, transfiera ese script al host usando scpy ejecútelo a través de ssh.

O, envíe el documento aquí -al shell apropiado:

ssh server sh <<'END_SCRIPT'
script code
goes here
END_SCRIPT

O bien, utilice Ansible o un sistema similar creado para la configuración remota de múltiples hosts.

Por lo general, no desea poner comandos en variables.

0
28.01.2020, 02:24

Su método actual es muy complicado, por lo que es difícil trabajar con él.
En cambio, esto se puede simplificar a:

ssh -i $AWS_KEY centos@$HOST sudo sh <./unifyServiceNode.sh
1
28.01.2020, 02:24

Если вы хотите хранить простые текстовые пароли, (явно плохая идея ), вы можете комбинировать sshpass -p "my_ssh_password", ssh << HEREDOCи echo "my_sudo_password" | sudo -S my_cmd, чтобы сделать это.

Пример:

sshpass -p "my_ssh_password" ssh my_user@my_ip << 'ENDSSH'
echo "my_sudo_password" | sudo -S my_sudo_command1
echo "my_sudo_password" | sudo -S my_sudo_command2
echo "my_sudo_password" | sudo -S my_sudo_script
ENDSSH
0
28.01.2020, 02:24

Теги

Похожие вопросы