- - Sådan sikkerhedskopierer du Linux-terminalhistorikken

Sådan sikkerhedskopieres Linux-terminalhistorik

Linux-terminalen har en "historie" -funktion. Med denne funktion sikkerhedskopieres hver kommandopræsion, du indtaster, til senere. Da alle dine terminalkommandoer gemmes i "historie", er det vigtigt at opbevare en sikkerhedskopi af den til sikker opbevaring.

I denne vejledning viser vi dig, hvordan du sikkerhedskopierer Linux-terminalhistorikken, og hvordan du også gendanner sikkerhedskopier. Så åbn din favorit Linux-terminalemulator og følg med!

Hvor er Linux-terminalhistorikken gemt?

Linux-terminalen gemmer sin historie i en fil. Denne fil hedder “.bash_history.” Enhver kan redigere den, og den gemmes i hjemmekatalogen. Da terminalhistorikfilen for Linux er gemt i et brugermappe, har hver eneste bruger på systemet en fil.

Særlige tilladelser beskytter ikke denne historiefiler, og enhver bruger på systemet kan se på historien til en anden med en simpel kommando. Så hvis jeg f.eks. Vil kigge på terminalen / kommandolinjens historie med brugernavnet "bruger" på mit Linux-system, ville jeg gøre det:

cat /home/user/.bash_history

Brugere kan også se historikken for den aktuelle bruger, de er logget på i Linux-terminalhallen, ved blot at udføre kommandoen “historie”.

history

Bedst af alt, da "historie" kun er en fil, kan den søges som en almindelig tekstfil ved hjælp af grep-funktionen. Så for eksempel at finde forekomster af “git klon” i brugernavn med kommandoen nedenfor.

cat /home/user/.bash_history | grep "git clone"

Det fungerer også som den nuværende loggede bruger med kommandoen “historie”.

history | grep "search term"

Gem terminalhistorik i en sikkerhedskopi

I det foregående afsnit af denne vejledning talte jegom, hvordan "historie" for Linux-terminalen bare er en pænt skjult tekstfil, der indeholder alle brugerindtastede kommandoer. Nå, da det kun er en fil, betyder det, at det er super let at tage sikkerhedskopi til sikkerhed.

For at oprette en sikkerhedskopi skal du bruge kat kommando. Hvorfor? Med kat, kan du se hele tekstfilen lige i terminalen. Vi kan bruge denne kommando i kombination med symbolet ">" til at omdirigere visningsoutputet til en sikkerhedskopifil.

Så for eksempel at tage backup af din nuværende historie skal du køre kat kommandoen mod “~ / .bash_history” og gem den i en fil med etiketten “history_backup.”

cat ~/.bash_history > history_backup

Du kan også køre historie kommando i kombination med “>” og gem det på den måde.

history > history_backup

Endelig er det muligt at tage backup af kommandolinjen / terminalhistorikken for en anden bruger, der ikke er logget ind ved at køre kommandoen nedenfor.

Bemærk: Sørg for at ændre "brugernavn" til den bruger, du vil gemme historikken fra.

cat /home/username/.bash_history > history_backup

Sikkerhedskopierer kun visse historiske poster

Du ønsker muligvis kun sikkerhedskopi af specifikke kommandoer i din Linux-terminalhistorie. Måden at gøre dette på er at se historiefilen og kombinere den med grep kommando, som filtrerer specifikke nøgleord.

For eksempel kun til sikkerhedskopikommandoer i din Linux-terminalhistorie, der indeholder git klon eller git kommandoer, kan du køre handlingen nedenfor.

Bemærk: i disse eksempler bruger vi ">>" snarere end ">." Årsagen til ">>" er, at det ikke vil overskrive indholdet i sikkerhedskopi af historikfilen og kan køres flere gange for at føje til backup.

cat ~/.bash_history | grep "git" >> history_backup

Eller

cat /home/username/.bash_history | grep "git" >> history_backup

Filtrering med grep kan også anvendes til historie kommando, ligesom det.

history | grep "git" >> history_backup

Hvis du vil tage sikkerhedskopi af bestemte nøgleord fra historiefilen, skal du udskifte "git" i eksemplerne ovenfor med de kommandoer, du gerne vil tage backup af. Du er velkommen til at køre denne kommando igen så meget som nødvendigt.

Sådan gendannes historiens sikkerhedskopi

Gendannelse af historisk sikkerhedskopi er så simpelt som at slette den originale fil og sætte sikkerhedskopien på sin plads. Hvis du vil slette den originale historiefil, skal du bruge rm kommando i et terminalvindue for at slette “.bash_history.”

rm ~/.bash_history

Når den originale historiefil er slettet fra hjemmemappen til den bruger, hvor du vil gendanne historikken, skal du bruge mv kommando til at omdøbe “history_backup” til “.bash_history.”

mv history_backup ~/.bash_history

Nu hvor den nye historiefil er på plads, køres historie -rw kommando til at indlæse terminalens historiefunktion.

history -rw

Du kan derefter se din terminalhistorie med:

history

Gendan sikkerhedskopier for andre brugere

Brug for at gendanne historiske sikkerhedskopier fra andre brugere på systemet? For at gøre dette, start med at logge ind på deres bruger ved hjælp af su kommando.

su username

Når du er logget ind på brugeren, skal du slette den aktuelle historikfil, der findes i brugerens hjemmekatalog (~).

rm ~/.bash_history

Derefter skal du omdøbe den historiske sikkerhedskopifil som den nye ".bash_history" -fil i brugerens bibliotek.

mv /path/to/backup/file/history-backup ~/.bash_history

Skriv ændringerne med:

history -rw

Når du er færdig, skal du løbe historie for at se de gendannede kommandoer i terminalvinduet.

Kommentarer