Como saber quando um usuário fez o último login sem usar o comando por último?

0

Estou tentando descobrir quando um usuário fez o último login sem usar "last". Última depende dos arquivos de log que são reciclados, após algumas semanas, as entradas antigas dos usuários são excluídas.

Tenho certeza de que há uma entrada por usuário em algum lugar que permanece retendo as informações. Quando eu faço login em alguns computadores para manutenção, ele sempre mostra meu último horário de login, mesmo que tenha ocorrido há mais de um ano.

Onde a rotina de login está localizando esta informação?

A propósito, meu sistema operacional Linux principal é o Ubuntu 16.04 LTS. Eu entendo que a partir de 18.04 haverá mudanças significativas no Ubuntu.

Eu perguntei no link em vez do link porque eu queria ter certeza de ter uma resolução de trabalho, mesmo se esse recurso for alterado na próxima versão. Além disso, recentemente tenho estudado o PI de framboesa.

A questão é sobre sistemas baseados em Linux em geral.

Exemplo:

Eu acabei de entrar em um dos meus servidores hoje, 8 de março de 2018. Isso é o que a rotina de login mostra:

Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-1037-aws x86_64)

78 packages can be updated.
0 updates are security updates.


*** System restart required ***
Last login: Fri Nov  3 02:46:58 2017 from 72.43.238.238

Os arquivos de log last só retornam para fevereiro:

$ ls -l /var/log/wtmp*
-rw-rw-r-- 1 root utmp 384 Mar  8 04:36 /var/log/wtmp
-rw-rw-r-- 1 root utmp   0 Feb  1 06:25 /var/log/wtmp.1

Algumas das tarefas pretendidas incluem a remoção de usuários ativos inativos de alguns dos meus servidores.

    
por L. D. James 08.03.2018 / 10:41

1 resposta

1

O comando para acessar esta informação é: lastlog

lastlog - reports the most recent login of all users or of a given user

Isso usa um banco de dados de tempos de logins de usuários anteriores. O banco de dados é armazenado em /var/log/lastlog .

Exemplo:

$ lastlog -u apollo
Username         Port     From             Latest
apollo           pts/43   127.0.0.1        Sun Feb 25 04:00:47 -0500 2018

Nota:

Do teste da saída do comando listlog , bem como das páginas man, o /var/log/laslog database parece ser permanente (tem entradas de todos os tempos). Você pode acessar a entrada lastlog de qualquer pessoa no arquivo /etc/passwd . O aplicativo lastlog informará o horário do último login da conta ou informará **Never logged in** se a conta nunca tiver efetuado login.

Esta entrada de exemplo remonta há 6 anos:

lorenzo          pts/6    ubunzeus         Fri Apr 20 21:23:18 -0400 2012
    
por 08.03.2018 / 12:33

Tags