Olá! Neste artigo gostaria de compartilhar com vocês uma solução para correção do timestamp do registro de último login. Algumas contas, quem podem ter efetuado o último acesso utilizando versões antigas do Zimbra, podem apresentar o timestamp fora do padrão, como no exemplo abaixo, obtido com o comando “zmaccts“:
fabio@respirandolinux.com.br active 03/16/17 01:55 05/16/17 21:13
Observe que é registrado apenas o ano, mês, dia, hora e minuto. O timestamp correto seria conforme o exemplo abaixo:
conta2@respirandolinux.com.br active 03/16/17 01:55 20170516211344.
Com o timestamp no padrão, é armazenado também o segundo do último acesso.
Para corrigir o timestamp das contas fora do padrão, é necessário executar os seguintes passos, que não irão zerar o campo ou colocar um padrão, e sim converter o timestamp incorreto para o valor válido (exceto para o segundo do acesso, que não estava registrado):
Efetuar o download do script no diretório /tmp e conceder permissão de execução:
https://github.com/fsschmidt/zimbra/blob/master/fix_lastlogon_timestamp.sh
# su – zimbra
$ zmaccts > contas.txt
$ cat contas.txt | grep -v “\.$\|never$” > contas_corrigir.txt
$ ./fix_lastlogon_timestamp.sh
Exemplo de saída do comando:
Conta: fabio@respirandolinux.com.br Valor antigo: 03/11/16 20:14 Valor convertido: 20160311201400.000Z
modifying entry “uid=fabio,ou=people,dc=respirandolinux,dc=com,dc=br”