Linux equivalente ao comando Unix who -m, para mostrar o ID do usuário original antes do su?

1

Estou tentando encontrar um equivalente no Linux para executar who -m no Unix. No Unix, who -m fornece o primeiro ID do usuário que você usou para efetuar login, antes de iniciar qualquer nova sessão do shell através de su , etc.

A opção -m para who tem um efeito diferente no Linux, e até o momento não consigo encontrar nada relevante para minhas necessidades nas páginas man.

    
por lahfordie 03.03.2017 / 06:59

1 resposta

0

Atualização: Minha resposta (quem sou eu) está correta, seu terminal está corrompido ou não está configurado corretamente para suportar a funcionalidade.

Com base nos comentários, fiz mais pesquisas e pedi ajuda a . Você não diz qual terminal está usando, mas provavelmente está fazendo a mesma coisa que o gnome-terminal.

Em relação ao gnome-terminal * quando o terminal é iniciado, ele não atualiza o arquivo utmp. Esta parece ser uma decisão de design. Mais tarde, quando alguém lê o utmp para descobrir as informações relevantes, ele não está lá, então apenas sai e não imprime nada.

* Eu tento xterm, konsole e ssh para várias distros.

Você deseja que who am i imprima o usuário solicitante, em oposição a whoami , que informa o nome de usuário do usuário efetivo atual

If given two non-option arguments, 'who' prints only the entry for the user running it (determined from its standard input), preceded by the hostname. Traditionally, the two arguments given are 'am i', as in 'who am i'.

Isso está enterrado em info coreutils 'who invocation' Então, curiosamente (em um sistema baseado em linux coreutils) who xyzzy plugh também funciona.

    
por 03.03.2017 / 07:30