En este breve artículo voy a demostrar cómo conocer, de forma exacta, cuál fue la fecha de instalación de un sistema operativo basado en Unix (GNU/Linux, FreeBSD).

Necesitaba saber con exactitud cuándo fue instalado un servidor. Simplemente tenía curiosidad, aunque podría haber necesitado tal información para un fin más importante, como por ejemplo un análisis forense. Lo primero que se me ocurrió es consultar los logs de instalación y las fechas de creación de los mismos. Aunque al tratarse de simples archivos, esta información puede ser fácilmente modificable. Por ello se me ocurrió consultar directamente la fecha de creación del sistema de archivos raíz.

ext 2/3/4 (GNU/Linux)

Para consultar la fecha de creación del filesystem raíz (/) antes es necesario saber en qué dispositivo se encuentra:

root@ubuntuserver:~# mount | grep "on / "
/dev/sda2 on / type ext3 (rw,errors=remount-ro)

Luego, es posible determinar la fecha de creación de sistemas de archivos ext2/3/4 utilizando la herramienta tune2fs:

root@ubuntuserver:~# tune2fs -l /dev/sda2 | grep "created"
Filesystem created:       Fri Apr  1 17:12:46 2011

Este servidor en particular fue instalado el 1 de abril de 2011 a las 17:12.

UFS o ZFS (FreeBSD)

En FreeBSD es posible lograr un resultado similar consultando la fecha de creación del directorio / (ya que su creación es producto del formato, sea UFS o ZFS):

root@hal9000:~ # stat -f "%SB" /
Nov 11 18:03:46 2014

En este ejemplo utilizo la herramienta stat para obtener información estadística del archivo /. La opción -f especifica el formato de la salida, donde el % indica el campo que se desea obtener, el cual es B (birth time) en formato de fecha (string).

Este sistema FreeBSD fue instalado el 11 de noviembre de 2014 a las 18:03.

Lógicamente, estamos suponiendo que la hora era correcta durante la instalación, y que el sistema de archivos raíz nunca fue formateado luego de la misma.


Tal vez pueda interesarte


Compartí este artículo