Il terminale Linux viene fornito con una pratica funzionalità chiamata "storia". Ogni comando immesso nel terminale viene salvato in un file chiamato ".bash_history". Viene creato un file di cronologia per ciascun utente e può essere trovato nella directory home dell'utente, ad esempio "/home/nomeutente/.bash_history".
Si noti che il file di cronologia ".bash_history" non è protetto con autorizzazioni speciali. Quindi qualsiasi utente che ha un account su quel sistema Linux può dare un'occhiata al file di cronologia degli altri utenti.
Backup e ripristino della cronologia del terminale
Nella prima sezione, tratteremo come eseguire il backup del file di cronologia del terminale Linux. Successivamente, ti mostreremo come ripristinare quei backup.
Visualizza il contenuto del file della cronologia
Passaggio 1. Per elencare il contenuto del file di cronologia, puoi utilizzare uno dei seguenti metodi.
Il primo metodo consiste nell'usare il comando "cat" come segue:
cat /home/hendadel/.bash_history

Il secondo metodo, puoi visualizzare in anteprima il contenuto del file di cronologia usando il comando cronologia come segue:
history

Passaggio 2. Puoi cercare nella cronologia utilizzando il comando "grep" utilizzando uno dei seguenti metodi.
Il primo metodo cercheremo il comando "kill" nel file ".bash_history" come segue:
cat /home/hendadel/.bash_history | grep 'kill'
Come puoi vedere nello screenshot qui sotto, il comando elencherà tutti i comandi che includono la parola "uccidi".

Il secondo metodo per cercare nella cronologia è utilizzare il comando "grep" con il comando "history" come segue:
history | grep 'kill'

File cronologia backup
Passaggio 1. Ora per creare un backup dal file di cronologia del tuo terminale Linux puoi utilizzare uno dei seguenti metodi.
Il primo metodo consiste nell'usare il comando "cat" insieme al simbolo ">". Questo dovrebbe reindirizzare l'output al file di backup.
cat /home/hendadel/.bash_history > history_backup
Come puoi vedere nella prossima schermata, dovrebbe essere creato un file di backup.

Il secondo metodo consiste nell'usare il comando "cronologia" insieme al simbolo ">".
history > history_backup2

Passaggio 3. Per eseguire un backup del file di cronologia che appartiene a un altro utente, puoi utilizzare il comando seguente.
cat /home/admin/.bash_history > admin_history_backup

Backup di comandi cronologici specifici
Passaggio 1. Per eseguire il backup di comandi specifici dal file della cronologia, puoi utilizzare uno dei seguenti metodi.
Il primo metodo consiste nell'usare il comando "grep" insieme al simbolo ">" o ">>". La differenza tra i simboli precedenti è che:
- >:Ogni volta che viene utilizzato questo simbolo, sovrascrive ogni volta il contenuto del file.
- >>:Tuttavia questo simbolo aggiunge l'output al file già creato, senza la necessità di sovrascrivere il file.
cat /home/hendadel/.bash_history | grep 'kill' >> history_backup

Il secondo metodo consiste nell'usare i comandi "history" e "grep" insieme al simbolo ">>" come segue:
history | grep 'kill' >> history_backup2

Passaggio 2. Nel caso in cui sia necessario eseguire il backup di comandi specifici dalla cronologia di un altro utente, è possibile utilizzare il comando seguente.
cat /home/admin/.bash_history | grep 'sudo' >> admin_history_backup
File di backup della cronologia di ripristino per l'utente corrente
Passaggio 1. Per ripristinare il file di backup della cronologia, è sufficiente eliminare il file della cronologia originale ".bash_history" che si trova nella directory home come segue:
rm /home/hendadel/.bash_history

Passaggio 2. Ora usa il comando "mv" per spostare il file di backup della cronologia nella home directory.
mv history_backup /home/hendadel/.bash_history

Passaggio 3. Dopo aver spostato il file di backup della cronologia, è necessario ricaricare la cronologia utilizzando il comando seguente.
history -r

Ora puoi visualizzare in anteprima la cronologia utilizzando uno dei comandi elencati in precedenza.
File di backup della cronologia di ripristino per altri utenti
Passaggio 1. Nel caso in cui sia necessario ripristinare il file di backup della cronologia per un altro utente, è necessario passare l'account a quell'utente utilizzando il comando seguente.
su admin
Passaggio 2. Dopo aver eseguito correttamente la registrazione, elimina il file della cronologia corrente.
rm /home/admin/.bash_history
Passaggio 3. Ora spostiamo il file di backup della cronologia nella nuova posizione.
mv /home/hendadel/admin_history_backup /home/admin/.bash_history
Passaggio 4. Ricarica la cronologia utilizzando il seguente comando.
history -r
Per ora è tutto.