Por que o comando 'users' retorna usuários diferentes, dependendo se eu ssh ou abro um novo terminal?

2

Como o users define o que os usuários estão conectados?

Se eu ssh em uma caixa duas vezes, vejo meu nome de usuário listado duas vezes se eu executar users . No entanto, se eu criar um novo shell de login por meio de sudo su - , não vejo root listado como usuários. O mesmo vale para qualquer outro usuário, como sudo su - user . Claro, um shell não-login também não aparece em users .

    
por imagineerThis 17.06.2015 / 02:01

1 resposta

2

users conta as sessões de login. Do sudo:

The su command is used to become another user during a login session.

(ênfase é minha). Uma sessão de login cria um novo tty, onde su usa o tty existente.

Eu olhei apenas o código-fonte para o comando usuários . O que ele faz é ler utmp . Então eu acho que a linha de fundo é que se você escrever um programa e escrever para o utmp, você será visto nos usuários.

    
por 17.06.2015 / 02:17