Home
» LINUX
»
Cum se face o copie de rezervă a istoricului terminalului Linux
Cum se face o copie de rezervă a istoricului terminalului Linux
Terminalul Linux are o caracteristică „istoric”. Cu această caracteristică, fiecare operație de comandă pe care o introduceți va fi copiată pentru mai târziu. Deoarece toate comenzile terminalului dvs. sunt salvate în „istoric”, este esențial să păstrați o copie de rezervă a acesteia pentru păstrare în siguranță.
În acest ghid, vă vom arăta cum să faceți copii de rezervă ale istoricului terminalului Linux și cum să restaurați copiile de rezervă. Așadar, deschideți emulatorul de terminal Linux preferat și urmăriți-l!
Unde este stocat istoricul terminalului Linux?
Terminalul Linux își stochează istoricul într-un fișier. Acest fișier se numește „.bash_history”. Oricine îl poate edita și este stocat în directorul principal. Deoarece fișierul istoric al terminalului pentru Linux este stocat într-un director de utilizator, fiecare utilizator de pe sistem are un fișier.
Permisiunile speciale nu protejează aceste fișiere istorice, iar orice utilizator de pe sistem poate arunca o privire asupra istoricului altuia printr-o simplă comandă. Deci, de exemplu, dacă vreau să arunc o privire asupra istoricului terminalului/liniei de comandă a numelui de utilizator „utilizator” pe sistemul meu Linux, aș face:
cat /home/user/.bash_history
Utilizatorii pot vedea, de asemenea, istoricul utilizatorului curent la care sunt conectați în shell-ul terminalului Linux, pur și simplu executând comanda „istoric”.
istorie
Cel mai bine, deoarece „istoria” este doar un fișier, poate fi căutat ca un fișier text obișnuit folosind funcția grep. Deci, de exemplu, pentru a găsi exemple de „git clone” în numele de utilizator cu comanda de mai jos.
De asemenea, funcționează ca utilizator curent conectat cu comanda „istoric”.
istorie | grep „termen de căutare”
Salvați istoricul terminalului într-o copie de rezervă
În secțiunea anterioară a acestui ghid, am vorbit despre modul în care „istoria” pentru terminalul Linux este doar un fișier text ascuns, care conține toate comenzile introduse de utilizator. Ei bine, deoarece este doar un fișier, asta înseamnă că este foarte ușor să faci copii de rezervă pentru păstrare.
Pentru a crea o copie de rezervă, utilizați comanda cat . De ce? Cu cat , puteți vizualiza întregul fișier text chiar în terminal. Putem folosi această comandă în combinație cu simbolul „>” pentru a redirecționa rezultatul de vizualizare către un fișier de rezervă.
Așadar, de exemplu, pentru a vă salva istoricul curent, executați comanda cat împotriva „~/.bash_history” și salvați-o într-un fișier cu eticheta „history_backup”.
cat ~/.bash_history > history_backup
De asemenea, puteți rula comanda istoric în combinație cu „>” și o puteți salva în acest fel.
istoric > istoric_backup
În cele din urmă, este posibil să faceți o copie de rezervă a istoricului liniei de comandă/terminalului altui utilizator care nu este conectat, rulând comanda de mai jos.
Notă: asigurați-vă că schimbați „nume de utilizator” cu utilizatorul de la care doriți să salvați istoricul.
cat /home/username/.bash_history > history_backup
Se face doar backup pentru anumite elemente din istoric
Este posibil să doriți doar să faceți copii de rezervă pentru anumite comenzi din istoricul terminalului Linux. Modul de a face acest lucru este să vizualizați fișierul istoric și să îl combinați cu comanda grep , care va filtra anumite cuvinte cheie.
De exemplu, pentru a face backup numai comenzilor din istoricul terminalului Linux care conțin clona git sau comenzile git , puteți rula operația de mai jos.
Notă: în aceste exemple, folosim „>>” în loc de „>”. Motivul pentru „>>” este că nu va suprascrie conținutul copiei de rezervă a fișierului istoric și poate fi reluat de mai multe ori pentru a fi adăugat la backup.
Filtrarea cu grep poate fi aplicată și comenzii history , așa cum este.
istorie | grep 'git' >> history_backup
Pentru a face backup pentru anumite cuvinte cheie din fișierul istoric, înlocuiți „git” din exemplele de mai sus cu orice comenzi pe care doriți să le faceți o copie de rezervă. Simțiți-vă liber să rulați din nou această comandă atât cât este necesar.
Cum să restabiliți backupul istoric
Restaurarea copiei de rezervă a istoricului este la fel de simplă ca ștergerea fișierului original și punerea copiei de rezervă la locul său. Pentru a șterge fișierul istoric original, utilizați comanda rm într-o fereastră de terminal pentru a șterge „.bash_history”.
rm ~/.bash_history
Odată ce fișierul istoric original este șters din folderul principal al utilizatorului în care doriți să restaurați istoricul, utilizați comanda mv pentru a redenumi „history_backup” în „.bash_history”.
mv history_backup ~/.bash_history
Acum că noul fișier istoric este la locul lui, rulați comanda history -rw pentru a reîncărca funcția de istoric a terminalului.
istorie -rw
Veți putea apoi să vedeți istoricul terminalului dvs. cu:
istorie
Restaurați copii de siguranță pentru alți utilizatori
Trebuie să restaurați copiile de rezervă ale istoricului de la alți utilizatori din sistem? Pentru a face acest lucru, începeți prin a vă conecta la utilizatorul lor folosind comanda su .
su nume de utilizator
După conectarea la utilizator, ștergeți fișierul istoric curent care se află în directorul principal al utilizatorului (~).
rm ~/.bash_history
De acolo, redenumiți fișierul de backup al istoricului ca noul fișier „.bash_history” din directorul utilizatorului.