Guardar la hora en el history de Linux

10 abril 2013 at 19:43 by Adrián Pérez

history linux

Algo que nos puede venir muy bien, es modificar el history de linux para:

  1. Almacenar la fecha y la hora en la que se ejecutaron los comandos
  2. Aumentar el límite por defecto del history para almacenar más comandos

En entornos RedHat (he hecho la prueba en un CentOS 6.3), en lugar de modificar el .bashrc de cada usuario, se puede modifiar el script de bash global, para que afecte a todos los usuarios del sistema. Sin embargo, esta modificación no se debe hacer directamente en  /etc/bashrc, si no que es preferible crearse un fichero donde ir añadiendo las modificaciones globales, sin tocar los archivos de sistema.

Para ello, crearemos nuestro fichero, que llamaremos "custom.sh", en /etc/profile.d/, conteniendo únicamente las dos instrucciones necesarias (la primera añade la fecha y hora a la instrucción, y la segunda aumenta el límite del history a 10000). Fijaos que no hace falta definir el "#!/bin/bash" al inicio!!

vi /etc/profile.d/custom.sh
#Custom global bash parameters

#Adding time to history and increasing it to 10000 lines
export HISTTIMEFORMAT="%h %d %H:%M:%S "
HISTSIZE=10000

¡Listo! Con ésto ya tendremos nuestro history modificado.

Hay que tener en cuenta, pero, que las instrucciones ejecutadas antes de realizar estas modificaciones, almacenarán todas misma hora, la hora en la que se añadió la fecha y hora en el history. Las instrucciones ejecutadas a partir de entonces, sí almacenarán la hora correcta.

Fuente: http://www.linux.org/article/view/add-date-time-to-your-bash-history-and-increase-it-to-5-000-lines

Flickr!Foto por Marc_Smith