Además de lo anterior ...
(1) Diferente manejo de escape tilda:
El "~". escape te desconectará si tienes una pty (-t). Para un comando de larga ejecución, es posible que desee evitar que alguien detenga accidentalmente el proceso si escribe ~.
$ ssh hostname.tomontime.com -t sleep 60
[type ~. y se desconecta] Se ha
cerrado la conexión a hostname.tomontime.com.
$ ssh hostname -T sleep 60
[Escribo ~. y lo trata como pulsaciones de teclas normales, que el comando de suspensión ignora.]
~.
~.
Pruebe lo mismo con CTRL-C. Verá que con -t está enviando el CTRL-C a la "suspensión". Con -T está enviando el CTRL-C al programa ssh que se ejecuta en su máquina. Puede haber ocasiones en que esto haga la diferencia (es decir, el programa maneja INT de manera diferente que HUP)
(2) Solo desea minimizar la actividad de conexión de red o pty.
¡Al intentar reiniciar una máquina que no tiene ptys, no desea alentar al sistema a que intente asignar una pty! Esto también minimiza las conexiones de red que deberán cerrarse (retrasando el reinicio).
Esto funcionará de manera más rápida y confiable:
ssh -T hostname reiniciar
Esto puede tener problemas:
ssh -t hostname reiniciar