Otro título sugerido: Nunca entendí a los que presumen del uptime.

De cada 100 veces que un nerd consulta el uptime de una PC o server, 99 es para presumirle a otro nerd al respecto. El otro 1% es para ver si la PC o server se rebooteó mientras nadie la miraba.
Los nerds no presumen de quien la tiene mas larga, presumen de quien la tiene mas vieja y se sobre-entiende que si la tenés mas vieja, es por que automáticamente sos mas macho y por carácter transitivo además la tenés mas larga.

A mas proximidad con Linux, mayor aglomeración de nerds alrededor. Por eso no me asombró que Linux tuviera un comando para medir la longitud de un pito. Solamente hay que ejecutar uptime delante de tu grupo de amigos para demostrar tu hombría y que despejar cualquier duda sobre quien es el macho alfa. La próxima ronda de cervezas vos no pagás y todos brindan en tu honor.

Continúa leyendo

 

Lo tiro acá para toda la posteridad. Un pequeñísimo script para convertir el timestamping de syslog (la cantidad de segundos transcurridos desde que booteó el sistema) a hora local, cosa que a priori parece trivial pero que a la tercera vez que tenés que usar ya te cansa la cabeza.

 

Un poco de bash scripting. Convertir de Unix timestamping en el syslog de Linux a Hora en formato human readable.

Un poco de bash scripting. Convertir de Unix timestamping en el syslog de Linux a Hora en formato human readable.

 

Este script no es mío, lo robé de algún lado hace años y desde entonces me acompaña a todas partes:

#!/bin/bash

if [ "$#" != "1" ] ; then
echo "Usage: `basename $0` time-offset-integer"
exit 1
elif [ "`echo $1 | sed 's/[0-9]//g'`" != "" ] ; then
echo "Usage: `basename $0` time-offset-integer"
exit 1
fi

N=`date +'%s'`
U=`FS="." /usr/bin/awk '{print $1;}' < /proc/uptime | sed 's/[^0-9].*//'`
TS=`expr $N - $U + $1`
T=`date --date="@$TS"`

echo "$1 seconds after boot was about $T."

 

Como se usa.

A la típica salida del comando dmesg, o /var/log/syslog por ejemplo:

[511684.749771] Process accounting resumed
[511684.842941] systemd[1]: apt-daily-upgrade.timer: Adding 33min 25.167508s random time.
You have new mail in /var/mail/root

 

 

Ejecutás el script anterior, que en este caso llamé syslogtohuman.sh:

~# ./syslogtohuman.sh 511684
511684 seconds after boot was about Thu Aug 16 11:20:13 -03 2018.

 

Y así sabés que esa entrada en el syslog en particular aproximadamente en esa fecha y a esa hora: Thu Aug 16 11:20:13 -03 2018

 

De nada.

Otro título sugerido: como cagarla por inactividad.

 

Tanto es el uptime de estos dos  a los que les tomé esta foto, hasta salen sonrientes, que cuando haya que reiniciarlos no van a volver nunca, y eso en el mejor de los escenarios (suponiendo que salgan bien parados del fsck que va a hacer si o si).

Tanto es el uptime que htop le agrega un (!) al lado, que es la forma políticamente correcta de hacerte saber que estás hasta las bolas. Que es virtualmente imposible que salgas ileso de esta, que por mucha buena suerte que tengas, si algo se podía romper, se va a romper.

 

Y así, es como luce una bomba de tiempo, versión servidor que corre Linux.

Y así, es como luce una bomba de tiempo, versión servidor que corre Linux.

 

Y a eso iba con el título de este post: si te dejas estar demasiado tiempo y no reinicias el servidor al menos una vez al año, cuando menos te lo esperes te va explotar en la cara, que es exactamente lo que me va a pasar a mí más tarde o más temprano.

Ya me enteraré, si es que me toca.