Articles

Hur du effektivt rensar din bash-Historik

bild: Jack Wallen

på dina Linux-maskiner behålls en historik över dina bash-kommandon. Det här är bra när du behöver upprepa ett kommando eller inte kommer ihåg exakt hur du utförde ett kommando i en tidigare session. Detta kan dock också ses som en säkerhetsfråga. Vad händer om någon får tillgång till din maskin, öppnar ett terminalfönster och kontrollerar genom din bash-historik för att se vilka kommandon du har kört?

Bash har ett praktiskt sätt att rensa historiken: utfärda kommandohistoriken-c. Det finns ett litet problem med det tillvägagångssättet. Låt mig förklara.

först behålls din bash-historik i filen ~/.bash_history. När du har en terminal öppen och du utfärdar ett kommando skriver det kommandot till historikfilen. Så utfärdande historia-c kommer att rensa historiken från den filen. Problemet uppstår när du har flera terminalfönster öppna.

säg att du har två terminalfönster öppna och du utfärdar Historik-c från den första och stänger det fönstret. Du flyttar sedan till det andra terminalfönstret och du skriver exit-kommandot för att stänga fönstret. Eftersom du hade ett andra bash-fönster öppet, även efter att ha kört kommandot history-c i det första, kommer den historiken att behållas. Med andra ord fungerar kommandot history-c bara när det utfärdas från det sista återstående terminalfönstret.

hur kommer du runt det? Du tömmer .bash_history-fil antingen per instans eller genom att använda ett crontab-jobb för att göra det regelbundet. Om säkerhet är en allvarlig fråga för dig, överväga att ställa in crontab-jobbet. Så här gör du.

se: Linux Foundation lanserar badge program för att öka open source security (ZDNet)

Clearing bash historia regelbundet

innan jag visar hur man ställer in crontab jobb för detta, vet att~/.bash_history-filen kan rensas med kommandot:

cat/dev/null>~/.bash_history

som tömmer innehållet i filen, men håller filen på plats.

låt oss säga att du vill rensa .bash_history-fil för användaren olivia (som administrerar din Linux-server) klockan 11:00 varje dag. Du skulle skapa ett cron-jobb under olivia-kontot. För att göra det, logga in som användaren olivia, öppna ett terminalfönster och utfärda kommandot crontab-e. när crontab-redigeraren öppnas anger du följande:

00 23 * * * cat/dev / null >~/.bash_history

spara den filen och cron börjar rensa Olivias historia klockan 11: 00 varje dag.

en surefire metod

detta är en surefire metod för att rensa ut din bash historia. Lita inte alltid på kommandot history-c, för du vet aldrig när en andra (eller en tredje) terminal fortfarande är öppen, redo att behålla den historiken.

se även

  • hur du synkroniserar ditt Google Cloud på Linux med Grive2 (TechRepublic)
  • GNOME sekretessalternativ ger användarna ännu mer skrivbordssäkerhet (TechRepublic)
  • Varför sakernas Internet behöver öppen källkod (TechRepublic)
  • hur man hanterar appbehörigheter på en Ubuntu-telefon (TechRepublic)
  • hur man använder darkstat för att övervaka Linux-serverns nätverkstrafik (TechRepublic) Techrepublic)
  • strömchecklista: hantera och felsöka Linux-användarkonton (Tech Pro research)