Domanda:come disabilitare la cronologia della shell BASH, in modo che non salvi la cronologia della shell degli utenti?
Soluzione:
Aggiungi una riga come la seguente alla fine di /etc/profile o un nuovo file /etc/profile.d/*.sh
unset HISTFILE
Ciò farà in modo che la shell bash di ogni utente salti il salvataggio dei file della cronologia a meno che gli utenti non configurino manualmente la variabile HISTFILE.
avvertenza
Non esiste un modo pratico per impedire completamente agli utenti di salvare la propria cronologia della shell bash. Gli utenti possono comunque ottenere la cronologia della shell salvata automaticamente dichiarando manualmente il HISTFILE variabile. Un utente può aggiungere quanto segue al proprio ~/.bash_profile o ~/.bashrc per creare i propri file di cronologia.
HISTFILE=$HOME/.my_history_file
Per rendere più difficile per gli utenti far sì che i loro processi bash salvino automaticamente la cronologia dei comandi, procedi nel seguente modo.
1. Aggiungi unset HISTFILE alla configurazione globale come originariamente descritto qui all'inizio del post.
2. Come root, prendi la proprietà dei file ~/.bashrc e ~/.bash_profile nella directory home di OGNI utente, ad esempio:
# chown root:root ~bob/.bashrc ~bob/.bash_profile
Come root, rendi immutabili quegli stessi file (nella directory home di OGNI utente), ad esempio:
# chattr +i ~bob/.bashrc ~bob/.bash_profile
Si noti che l'esecuzione di questi passaggi non impedirà a un utente di dichiarare manualmente la variabile HISTFILE dalla riga di comando ogni volta che avvia un processo bash. Quindi, se qualcuno dichiara una variabile HISTFILE, può comunque essere in grado di salvare la cronologia dei comandi in un file.
Solaris:come includere data e timestamp nella cronologia dei comandi della shell bashCentOS/RHEL:come ottenere la data e l'ora del comando eseguito nell'output del comando della cronologia
UNIX/Linux:esempi di comando della cronologia bash per ripeti gli ultimi comandi