Toutes les commandes tapées dans un shell Bash Linux sont conservées. On y accède par un simple « history » via un Terminal local ou une connexion SSH distante. Si garder l’historique des requêtes peut être pratique, ces lignes peuvent également conserver des informations confidentielles que l’on ne souhaite pas laisser accessibles, même si celles-ci sont limitées à l’utilisateur courant, il n’y a pas de partage de l’historique entre un compte root et un utilisateur lambda, par exemple, chaque compte utilisateur dispose de son propre historique.

tutoriel history linux

Ce tutoriel explique comment vider l’historique Linux, entièrement ou partiellement, pour que des informations sensibles ne soient plus enregistrées en mémoire sur le système d’exploitation. Toutes les distributions Linux sont concernées par ce guide, que ce soit Ubuntu, Debian, CentOS, Fedora, Red Hat, etc.

 

Où est conservé l’historique des commandes Linux

L’historique qui s’affiche avec une commande history appelle un fichier enregistré à cet endroit. Un simple cat permet de le lire.

~/.bash_history

Chaque login Linux a donc son propre historique puisque ce fichier est enregistré dans /home/username.

 

Effacer tout l’historique des commandes shell Bash Linux

Pour vider complètement l’historique de toutes ses commandes enregistrées, deux requêtes à saisir :

history -chistory -w

 

Effacer une ligne de l’historique Linux

Pour effacer une seule ligne history, on utilisera la commande suivante :

history -d 101

(où 101 est le numéro de la ligne, au préalable récupéré par un history)

 

Effacer une série de commandes de l’historique Linux

Ce script bash permet de supprimer une série de lignes de commande, des numéros de ligne que l’on trouve via un simple history.

for (( i=101; i <= 105; i++ )) 
do 
history -d $i 
done