У меня есть интерактивный сценарий оболочки, который в одном месте должен подключиться по ssh к другому компьютеру (на основе Ubuntu) и выполнить что-либо от имени пользователя root (пользователь должен ввести свой пароль, но удаленная команда должна выполняться так, как указано в сценарии):
# ...
ssh remote-machine 'sudo ls'
# ...
Тем не менее, я всегда получаю это сообщение об ошибке:
sudo: no tty present and no askpass program specified
ОК, это совершенно ясно. Но как я могу обойти это? Нечто подобное должно произойти:
$ ssh remote-machine 'sudo ls /'
[sudo] password for user1:
/bin
/etc
/var
ls
вывод будет содержать \ r \ n окончания, например.