Linux: como descobrir quando um servidor foi instalado

Um caso curioso de um servidor "Windows" que apareceu com Linux, e os comandos para descobrir quando um servidor Linux foi instalado, em diferentes distribuições e sistemas de arquivos.

Bom dia pessoal.

Um tempo atrás, um analista me perguntou como ele fazia para descobrir quando um servidor tinha sido instalado. A pergunta veio de uma situação um tanto quanto estranha.

O caso

O dono do servidor afirmava que a máquina era Windows. Como ele nunca mais tinha precisado administrá-la, o servidor ficou parado por um bom tempo e, supostamente, ninguém tinha mexido nele.

Quando decidiu colocá-lo para funcionar de novo, não conseguia mais acessar e pediu para o analista verificar. Ao abrir a console do servidor... apareceu um terminal Linux.

O dono do servidor deveria era ter ficado feliz :D

Mas ele garantia que não tinha alterado nada, e o time também dizia que não tinha instalado nada ali. Então surgiu a pergunta:

Quando este servidor foi instalado?

O comando que usamos na época

Em sistemas de arquivos ext2, ext3 e ext4, a data de criação do sistema de arquivos fica gravada no próprio superbloco:

$ sudo dumpe2fs /dev/sda1 | grep 'Filesystem created'
Filesystem created:       Tue Mar 12 14:03:27 2013

Com isso foi possível mandar a data ao dono do servidor e, quem sabe, fazer ele lembrar se naquela data ele mesmo, ou alguém, tinha mexido em alguma coisa.

Como fazer isso hoje

O comando acima continua funcionando, mas muita coisa mudou desde então: discos NVMe, LVM e o XFS como padrão em várias distribuições. Então, primeiro descubra qual é o dispositivo da raiz e qual o sistema de arquivos:

$ findmnt -n -o SOURCE,FSTYPE /
/dev/mapper/vg-root xfs

Com isso em mãos, escolha o caminho:

# ext4: igual à época (troque pelo dispositivo que o findmnt mostrou)
$ sudo tune2fs -l /dev/nvme0n1p2 | grep 'created'

# qualquer sistema de arquivos com suporte a "birth time" (ext4, xfs, btrfs)
# se aparecer "-", o sistema não guarda essa informação
$ stat -c '%w' /

# RHEL, Rocky, Alma, Fedora: data de instalação do pacote base do sistema
$ rpm -qi basesystem | grep 'Install Date'

# Debian e Ubuntu: os logs do instalador, quando ainda existem
$ ls -l --time-style=long-iso /var/log/installer/
⚠️ Cuidado com VMs e templates: se o servidor foi criado a partir de uma imagem ou template (o que hoje é o mais comum, na cloud e na virtualização), a data pode ser a de quando o template foi criado, e não a de quando a VM nasceu. Nesses casos, cruze com a data de criação da VM no console da cloud ou do hypervisor.

Um bônus: o que mudou desde a instalação?

Na investigação de "ninguém mexeu nesse servidor", a data da instalação é só o começo. Algumas outras pistas ajudam:

  • last -x | tail: histórico de logins, reboots e desligamentos;
  • ls -lt /etc | head: os arquivos de configuração alterados por último;
  • /var/log/dnf.log ou /var/log/apt/history.log: o que foi instalado ou atualizado, e quando.

Considerações Finais

Esse caso é um bom lembrete de que, em infraestrutura, "ninguém mexeu" raramente é verdade. Os dados para descobrir o que aconteceu quase sempre estão no próprio servidor. E hoje em dia, vale ter um inventário que responda a essa pergunta sem precisar abrir a console de ninguém.

Abraço e até a próxima!

:wq!

Post publicado originalmente em fevereiro de 2014 e atualizado em novembro de 2026.

Comentários