Qual é a fonte de verdade para conexões tty / pts atualmente ativas?

2

Estou procurando uma maneira simples de determinar o número de usuários logados atualmente, usando apenas o sistema de arquivos e as funções bash básicas (em vez de usar binários).

O binário uptime parece estar lendo /var/run/utmp de acordo com seu código-fonte, mas /var/run/utmp não parece atualizar em tempo real (mostra tty7 e pts/1-5 para meu usuário, mas Estou apenas no tty7 e pts/5 no momento). No entanto, o binário uptime mostra corretamente "2 usuários".

Observação: em vez de confiar em uptime ou getutent() em C, estou tentando entender melhor como o sistema subjacente funciona.

Qual é o melhor lugar para encontrar um número atual e exato de usuários conectados ao sistema?

    
por 5ba8cabe450348c7fbe2 07.02.2013 / 09:05

1 resposta

2

Você pode ver quantos arquivos são alocados olhando para /proc/sys/kernel/pty/nr , mas não necessariamente para quantos pessoas estão logadas.

Por exemplo, em um dos meus servidores, atualmente sou a única pessoa que está conectada, mas há 7 ptys em uso por causa dos usuários que estão executando screen .

    
por 07.02.2013 / 11:04