Un backup bun nu începe cu o aplicație complicată, ci cu o regulă simplă: copia trebuie să poată fi găsită ușor. De aceea, un script Bash care creează o arhivă cu data în numele fișierului este una dintre cele mai utile automatizări pentru un laptop, un server mic sau un proiect personal.
Ideea este simplă: alegi folderul sursă, alegi folderul unde salvezi copia, generezi un marcaj de timp cu date, apoi creezi o arhivă tar.gz. Dacă ești la început, merită să citești întâi cum creezi primul tău script Bash pentru sarcini simple, pentru că aici plecăm de la aceeași logică: pași mici, testați pe rând.
Ce face scriptul, pe scurt
Scriptul nu „salvează tot Linux-ul”. El arhivează un director ales de tine. Pentru backupuri de sistem, baze de date sau servere de producție, ai nevoie de politici separate, permisiuni corecte și test de restaurare. Pentru fișiere de lucru, proiecte sau configurări personale, însă, un script local poate fi suficient ca prim strat de protecție.
Un nume util pentru arhivă poate arăta așa: backup-2026-09-26-21-30-00.tar.gz. Partea cu data se obține cu comanda date. Documentația GNU coreutils arată că date acceptă forma date [OPTION]… [+FORMAT], iar formatul controlează ce apare la ieșire. În practică, combinația cu an, lună, zi, oră, minut și secundă evită suprascrierea copiilor vechi.
Variabilele fac scriptul mai sigur de citit
Un script clar începe cu variabile pentru calea sursă și destinație. Dacă schimbi ulterior folderul de backup, modifici o singură linie, nu toate comenzile. Pentru această parte ajută și ghidul despre cum folosești variabile în Bash pentru scripturi mai clare.
Structura minimă poate fi gândită așa:
- SRC=”$HOME/Documente”
- DEST=”$HOME/backupuri”
- stamp=”$(date +%Y-%m-%d-%H-%M-%S)”
- archive=”$DEST/backup-$stamp.tar.gz”
Apoi creezi destinația, dacă nu există:
- mkdir -p “$DEST”
Opțiunea -p este documentată de GNU mkdir: nu tratează ca eroare faptul că directorul există deja și creează directoarele părinte necesare.
Crearea arhivei cu tar
Pentru arhivare, tar este unealta clasică. Ajutorul GNU tar arată că -c creează o arhivă nouă, iar exemplele oficiale includ forma tar -cf archive.tar foo bar. Pentru un backup comprimat, forma uzuală este:
- tar -czf “$archive” -C “$SRC” .
Atenție la ce incluzi. Nu arhiva la întâmplare directoare cu parole, tokenuri, chei private sau loguri sensibile. Dacă ai nevoie să cauți fișiere vechi sau foarte mari înainte de backup, poți folosi ghidul despre comanda find pentru căutarea fișierelor după nume, dimensiune, dată sau extensie.
După creare, verifică măcar că arhiva poate fi citită:
- tar -tzf “$archive”
Această verificare nu înlocuiește restaurarea reală, dar îți arată rapid dacă arhiva are conținut listabil. Din când în când, testează extragerea într-un folder separat, ca să nu descoperi problema exact când ai nevoie de date.
Automatizarea cu cron
Dacă scriptul rulează corect manual, îl poți programa cu cron. Pagina crontab(5) explică faptul că un crontab definește comenzi care rulează la o anumită oră sau dată, sub utilizatorul care deține acel crontab.
Un exemplu de rulare zilnică seara ar fi:
- 0 21 * /home/ana/scripts/backup-cu-data.sh
În cron, mediul poate fi mai sărac decât în terminalul tău interactiv. Folosește căi absolute, testează cu un folder mic și verifică unde ajung mesajele de eroare. Pentru scenarii mai serioase, cu pași care pot eșua parțial, merită să înveți și despre scripturi Bash tranzacționale cu rollback după execuții parțial eșuate.
O regulă simplă: backupul se verifică
Un fișier cu dată în nume este util doar dacă îl poți restaura. Păstrează copiile importante și pe un mediu separat, nu doar în același disc. Notează ce salvează scriptul, când rulează și cum verifici arhiva. Un backup automat nu este o garanție absolută, dar este mult mai bun decât promisiunea că „voi copia manual mai târziu”.
Întrebări frecvente
De ce să pun data în numele backupului?
Pentru că diferențiezi rapid copiile și reduci riscul de a suprascrie arhiva anterioară. Formatul cu an, lună, zi, oră, minut și secundă este ușor de sortat.
Este suficient un script Bash pentru orice backup?
Nu. Este potrivit pentru foldere de lucru sau proiecte personale, dar backupurile de sistem, bazele de date și serverele de producție cer politici și teste separate.
Cum verific dacă arhiva tar.gz are conținut?
Poți lista conținutul cu tar -tzf “$archive”. Pentru siguranță mai bună, testează periodic extragerea într-un folder separat.
Pot rula scriptul automat cu cron?
Da, după ce l-ai testat manual. În cron folosește căi absolute și ține cont că mediul poate fi diferit de terminalul interactiv.

















































