Se você não especificar -s
ou --preserve-environment
, o shell do usuário destino será usado. No seu exemplo, isso seria executar /bin/false -c 'ls >> /t/t2'
, o que, obviamente, não executa nada útil.
O "login shell" tem um significado específico e faria com que os shells normais, como sh
ou bash
, executassem os scripts de login, como .profile
.