Para ejecutar comandos con sudo en equipos remotos linux con sistema operativo ubuntu basta con ejecutar los siguientes comandos:
ssh root@ipserver "cd /home/user/backup/; ls -l"
Para ejecutar varios comandos usaremos “;” separando un comando de otro.
Ahora bien, en caso de querer ejecutar algo así:
ssh root@ipserver "cd /etc;sudo vi sudoers"
Obtendremos el siguiente error:
root@ipserver's password: sudo: sorry, you must have a tty to run sudo
Para ejecutar comandos remotos con sudo por ssh, deberemos utilizar el parámetro “-t” que creará una pseudo terminal tty para permitirnos la ejecución:
ssh -t root@ipserver "cd /etc;sudo vi sudoers"
Ahora si se habra ejecutado el comando en el equipo remoto haciendo uso del superusuario.