O problema com su
é que ele não coloca o tty no novo usuário. Isso não importa quando você está su'ing a raiz, mas para outros usuários não possuir o tty leva a dificuldade.
Executando login
do shell usado para ser uma coisa normal (ou pelo menos aceitável) para fazer. Shells trataram especialmente, implicitamente fazendo um exec
. Conchas modernas não parecem mais fazer isso. A execução exec login
explicitamente pode ajudar. Adicionar -f username
é outra coisa para tentar.
Quando você faz isso como um usuário não-root, ele só funciona se login
for setuid-root, que costumava ser a configuração padrão, mas não é mais tão comum. A versão sudo
também pode funcionar se precedida por exec
, supondo que o sudo é inteligente o suficiente para sair do caminho (ou seja, fazer um exec direto, não um fork + exec + wait)
Depois de passar por tudo o que eu me pergunto por que você não apenas ssh host -l minecraft
e cortar o intermediário