Eu tenho um shell script interativo, que em um local precisa ssh para outra máquina (baseada no Ubuntu) e executar algo como root (o usuário deve digitar sua senha, mas o comando remoto deve executar como observado no script):
# ...
ssh remote-machine 'sudo ls'
# ...
No entanto, sempre recebo essa mensagem de erro de volta:
sudo: no tty present and no askpass program specified
OK, está bem claro. Mas como posso contornar isso? Algo assim deve acontecer:
$ ssh remote-machine 'sudo ls /'
[sudo] password for user1:
/bin
/etc
/var
ls
a saída conterá \ r \ n finais, por exemplo.