Como determinar la fecha de instalación de tu sistema Linux

por | 7 junio, 2016

fecha-creacion-sistema

Estos días que me andabais preguntando en el blog por la distro que uso, me asaltó la duda de cuantos meses llevaba con Antergos (los habituales sabéis que durante muchos años fui usuario de openSUSE) y se me ocurrió que debería haber un comando que nos aclarara ese tema desde la terminal.

Existen diferentes soluciones, algunas se basan en la fecha de creación del sistema de archivos raíz (aunque en muchos casos solo funciona con sistemas de archivos ext3/ext4, por lo que si tenemos xfs o btrfs no nos vale de nada) o son demasiado específicas al centrarse en una distro determinada.

De todas las que he visto, esta me parece la más elegante:

ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'

Lo que hace el comando anterior es hacer una búsqueda recursiva , determinar cual es el archivo más antiguo de los creados en el directorio /etc y mostrar la fecha de creación utilizando awk.

Si queremos ser algo más específicos, podemos establecer también la hora:

ls -lct --time-style=+"%d-%m-%Y %H:%M:%S" /etc | tail -1 | awk '{print $6, $7, $8}'

En un enfoque similar otra opción podría ser:

ls -lAhF /etc/hostname

Pero tiene el inconveniente de que no sirve, si en algún momento hemos cambiado el nombre del sistema o modificado el archivo hostname.

Ambos comandos me dan resultados positivos en Antergos y Xubuntu 14.04.

Ya me contaréis si funcionan fuera de la familia archera o debianita y si utilizáis algo diferente en vuestros sistemas 🙂

Vía | Hummy

24 pensamientos en “Como determinar la fecha de instalación de tu sistema Linux

  1. Daniel

    Interesante comando, lo probé en mi ubuntu 14.04, pero no aparece el año, solo el mes y la hora. Saludos.

    Responder
    1. Anger

      Igual me pasa, pero vamos a ver que se consigue para estos casos Ubuntu 14.04

      Responder
  2. D'Artagnan

    He tirado los comandos en Antergos Gnome y me parece que el mas preciso es el segundo, pues a pesar de que es el mas largo indica día, hora y año.

    Voilá:
    ls -lct –time-style=+»%d-%m-%Y %H:%M:%S» /etc | tail -1 | awk ‘{print $6, $7, $8}’
    31-12-2015 17:30:18 shells
    Siempre y cuando no hayas tenido que formatear y reinstalar de nuevo tu sistema será mas o menos cierto.

    Responder
  3. liamngls

    Yo tengo esto por ahí guardado y va bastante bien, debería funcionar en casi todo con permisos de superusuario:

    dumpe2fs $(mount | grep 'on \/ ' | awk '{print $1}') | grep 'Filesystem created:'

    Responder
    1. Anger

      En mi caso Ubuntu 14.04 ,dio buen resultado.

      sudo dumpe2fs $(mount | grep ‘on \/ ‘ | awk ‘{print $1}’) | grep ‘Filesystem created:’

      dumpe2fs 1.42.12 (29-Aug-2014)

      Filesystem created: Thu Mar 3 09:44:29 2016

      Gracias por el aporte, ya tenemos mas de una forma de como saberlo, mas las aportadas por el colega thannhausser

      Responder
    2. emesoria

      es interesante el comando que publicaste amigo si funciona en Arch…….gracias por rolarlo y tambien al replicante por hacernos llegar estos aportes

      Responder
  4. mabox2016

    Esto es más geek que hacer un circulito en el almanaque al día del evento.

    Responder
  5. victorhck

    ¿y un uname -a no nos da esa información?

    Linux Leap 4.1.21-14-default #1 SMP PREEMPT Sun Apr 17 07:27:45 UTC 2016 (fc187c1) x86_64 x86_64 x86_64 GNU/Linux

    no sé, si esa fecha es la de la instalación del sistema…

    Responder
    1. fr4nc_

      Si mal no recuerdo, esa fecha corresponde a la fecha de compilación del kernel en uso ( 4.1.21-14-default en tu caso).

      Responder
  6. Sergio

    A mí en KaOS también me funciona bien. Tanto el primer comando como el segundo me dan fecha y hora. La única diferencia es el formato de la hora que en el segundo caso incluye los segundos.

    Responder
  7. Marcelo

    Las instrucciones de @tannhausser y @liamngls me llevaron a un viernes de abril de 2014 cuando se creo el archivo de sistema sin tener que ‘hacer un circulito en el almanaque el dia del evento’ (mabox2016).

    Responder
  8. AlexRE

    Yo lo hago con `ls -ld /lost+found` en caso de tener un sistema de archivos ext*

    Cambiando el estilo de la hora de ls -l o con stat para ver también la hora exacta.

    Responder
  9. alunado

    en Debian tuve una variacion:

    Tanto..
    ls -lct /etc | tail -1 | awk ‘{print $6, $7, $8}’
    como
    ls -lct –time-style=+»%d-%m-%Y %H:%M:%S»

    me devuelven oct 30 2015 (la segunda me dice que fue a las 2 de la matina! 02:09:08 a.m., se ve que fui partera de noche)

    Pero al ver la fecha del archivo hostname obtengo una mas vieja..
    ls -l /etc/hostname

    8 oct 30 2015, asi que ya no se si mi hijito debian es de libra o de escorpio… que hago doctor? como adivino su pasado?

    Responder
  10. Carlos

    Hummm!!!

    Si hago un «ls -lct /etc | tail -1 | awk ‘{print $6, $7, $8}’» obtengo:

    15:46:18>carldeb:~\carlos(*) ls -lct /etc | tail -1 | awk ‘{print $6, $7, $8}’
    jul 15 2006

    Por contra, con dumpe2fs obtengo:

    15:49:41>carldeb:~\carlos(*) sudo dumpe2fs $(mount | grep ‘on \/ ‘ | awk ‘{print $1}’) | grep ‘Filesystem created:’
    dumpe2fs 1.42.12 (29-Aug-2014)

    Seguramente este disco duro viene copiado de otro (mi debian ha sobrevivido a varias placas base, algún que otro cambio de cpu y varias gpu); sería interesante conocer qué fecha capta cada una de esas órdenes («comandos» para los bélicos).

    Lo que ya sabía es que el sistema del pinguino sobrevive a casi cualquier cataclismo 🙂

    Responder

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.