đ§Linux shell: historique hordoratĂ© illimitĂ© en temps rĂ©el
- 170 vues
Enregistrer en temps réel l'historique des commandes exécutés dans un shell avec la date et l'heure et sans limite de taille. Ceci s'applique à tous les utilisateurs de la machine.
Â
En root, dans le dossier /etc/profile.d crée un fichier history.sh et mets ça dedans:
# Historique illimité avec hordoratage
# Copier ce fichier dans /etc/profile.d
# Historique illimité, il suffit de ne pas donner de taille (en octets) de fichier:
HISTFILESIZE=
HISTSIZE=
# Historique avec la date:
HISTTIMEFORMAT='%F %T %t'
# Logguer l'historique de multiples sessions, cas oĂč l'utilisateur ouvre plusieurs sessions en mĂȘme temps.
# L'Ă©criture dans le fichier se fait Ă chaque commande.
shopt -s histappend
PROMPT_COMMAND="history -a;$PROMPT_COMMAND"
Â
Pour tester si ça fonctionne, lance un tail -f ~/.bash_history et ouvre un autre terminal.
Il ne doit pas y avoir d'erreurs du type "commande introuvable" ou tout autre message inhabituel dans le terminal.
ExĂ©cute quelques commandes (exemple: uptime; cd; ls; etc...). Lors de l'appui sur [ENTER] la commande doit aussitĂŽt apparaĂźtre dans l'autre terminal oĂč il y a le "tail -f".
L'enregistrement de la commande se fait aprĂšs son exĂ©cution. Par exemple, tu est connectĂ© en ssh, tu ouvres un fichier avec vim et tu as une dĂ©connexion rĂ©seau, la commande qui t'a permis d'ouvrir le fichier ne sera pas enregistrĂ©e dans l'historique. La commande vim sera enregistrĂ©e au moment oĂč tu quitteras vim et reviendra sur le shell.