O comando de login falha e fecha a conexão

0

Estou tentando executar o comando login , mas ele falha.

Como root (via SSH) eu recebo:

root@server:~# login
Connection to 192.168.0.50 closed.

A conexão SSH está fechada. Em um TTY “físico” a sessão é fechada e eu volto para a tela de login.

Como usuário comum usando o sudo:

bilbax@server:~$ sudo login
Password: 

[1]+  Stopped                 sudo login

Pouco antes deste bug aparecer, tentei usar o comando login como de costume, funcionou, ele pediu a senha. Eu digitei errado, tentei novamente, mas o comando congelou. Eu tentei ^ C, sem sucesso. Então, como root, executei killall login ; não funcionou também. Eu reiniciei o sistema e agora eu tenho que bug descrito acima.

Eu fiz algo errado ao matar o comando?

Estou no Arch Linux x86_64 (kernel 3.4.7-1-ARCH).

    
por lesenk 12.08.2012 / 00:30

1 resposta

2

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

    
por 12.08.2012 / 07:54

Tags