Skip to content
Backup complet automat cu rsync și cron

Backup complet automat cu rsync și cron în Linux

Backup complet automat cu rsync și cron în Linux. Realizarea backupurilor regulate este esențială pentru securitatea datelor și continuitatea activității digitale.

În mediile Linux, o metodă eficientă, flexibilă și automatizabilă presupune utilizarea comenzii rsync împreună cu programatorul de sarcini cron.

Această combinație permite copierea incrementală a fișierelor, economisind timp și resurse.

Backup complet automat cu rsync și cron?

1. Ce este rsync?

rsync este un utilitar de sincronizare a fișierelor, disponibil în majoritatea distribuțiilor Linux.

Acesta compară sursa și destinația și transferă doar fișierele noi sau modificate, fiind ideal pentru backupuri frecvente și rapide.

2. Instalarea rsync

Pe majoritatea sistemelor Linux, rsync este preinstalat. Dacă nu este disponibil, îl puteți instala astfel:

    • Debian/Ubuntu:
sudo apt install rsync
    • CentOS/RHEL:
sudo yum install rsync

3. Structura comenzii rsync

O comandă de bază pentru backup cu rsync arată astfel:

rsync -avh /cale/sursa/ /cale/destinatie/
  • -a: arhivează fișierele (permisiuni, linkuri, proprietar)
  • -v: mod verbose, afișează procesul
  • -h: formatează dimensiunile fișierelor într-un mod ușor de citit

4. Exemplu de backup local

Backup al directorului /var/www către /backup/www:

rsync -avh /var/www/ /backup/www/

Asigurați-vă că destinația există și are permisiuni corespunzătoare.

5. Exemplu de backup remote prin SSH

rsync -avhe ssh /var/www/ user@remote_server:/home/user/backup_www/

Această comandă face backupul fișierelor de pe serverul local pe un server remote folosind autentificare SSH.

6. Automatizarea backupului cu cron

cron este programatorul de sarcini în Linux care poate rula comenzi la intervale prestabilite.

Pentru a crea un backup automat zilnic, editați fișierul cron al utilizatorului:

crontab -e

Adăugați o linie precum:

0 2 * * * rsync -avh /var/www/ /backup/www/ >> /var/log/rsync-backup.log 2>&1

Aceasta va rula backupul în fiecare zi la ora 02:00 și va salva logurile într-un fișier dedicat.

7. Backup incremental cu ștergerea fișierelor eliminate

Pentru a menține sincronizarea perfectă, inclusiv ștergerea fișierelor eliminate din sursă:

rsync -avh --delete /var/www/ /backup/www/

Atenție: –delete poate duce la pierderea datelor dacă este utilizat incorect. Testați comanda înainte de automatizare.

8. Backup criptat și securizat

Folosiți chei SSH pentru a automatiza backupul remote fără parolă. Generați cheia cu:

ssh-keygen -t rsa

Transferați cheia pe serverul de destinație:

ssh-copy-id user@remote_server

Apoi, rsync poate fi rulat prin cron fără intervenție umană.

9. Găzduirea backupurilor pe un disc extern sau în cloud

    • Pentru disc extern:
rsync -avh /var/www/ /media/nume_disc/www_backup/
    • Pentru cloud (cu rclone, configurat anterior):
rclone sync /var/www remote:backup/www

10. Verificarea și restaurarea backupurilor

Este esențial să verificați periodic dacă backupurile s-au efectuat corect și pot fi restaurate. Puteți folosi:

    • diff pentru comparație:
diff -rq /var/www/ /backup/www/
    • Restaurarea se face simplu, cu rsync în sens invers:
rsync -avh /backup/www/ /var/www/

Implementarea unui sistem automat de backup cu rsync și cron în Linux este o soluție eficientă, rapidă și de încredere pentru protejarea datelor.

Flexibilitatea rsync, combinată cu capacitatea cron de a programa sarcini, permite crearea unei rutine automate care asigură redundanță și securitate.

Nu uitați să verificați periodic funcționarea backupului și să păstrați copii externe pentru siguranță maximă.

Back To Top
Search