Awaria dysku, blad ludzki, atak ransomware - powodow utraty danych jest wiele, ale sposob na ich unikniecie tylko jeden: regularne, zautomatyzowane backupy. W tym artykule pokaze Ci sprawdzone strategie i narzędzia, ktore pomoga chronic Twoje dane.

Zasada 3-2-1

To fundamentalna zasada backupu, ktora stosuja profesjonalne dzialy IT na calym swiecie:

Przestrzeganie tej zasady sprawia, ze zadne pojedyncze zdarzenie - pozar, kradziez, awaria dysku czy atak ransomware - nie moze zniszczyc wszystkich kopii jednoczesnie.

rsync - prosty i skuteczny

Rsync to najpopularniejsze narzędzie do synchronizacji plików w Linuxie. Dziala lokalnie i przez SSH, kopiujac tylko roznice między źródłem a celem. Przyklad podstawowego backupu:

rsync -avz --delete /srv/dane/ uzytkownik@backup-serwer:/backup/dane/

Parametr -a zachowuje atrybuty plików, -v wyświetla postep, -z kompresuje dane, a --delete usuwa pliki z celu, ktore nie istnieja juz w zrodle. Rsync idealnie nadaje sie do codziennych backupow i mozna go latwo zautomatyzowac przez cron.

Borg - deduplikacja i szyfrowanie

Borg to zaawansowane narzędzie oferujace deduplikacje, kompresje i szyfrowanie AES-256. Dzieki deduplikacji kazda kolejna kopia zajmuje tylko tyle miejsca, ile zmienilo sie od ostatniego backupu. To oszczedza zarowno miejsce, jak i czas transferu.

borg init --encryption=repokey /mnt/backup/repo
borg create --stats /mnt/backup/repo::'{hostname}-{now:%Y-%m-%d}' /etc /home /srv

# Czyszczenie starych kopii (np. 7 dziennych, 4 tygodniowe)
borg prune --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /mnt/backup/repo

Restic - backup do chmury

Restic to nowoczesne narzędzie z natywna obsluga chmury: S3, Backblaze B2, Azure Blob, Google Cloud Storage i SFTP. Kazdy backup jest domyslnie szyfrowany AES-256. Przyklad backupu do S3:

restic init --repo s3:s3.amazonaws.com/moj-bucket/restic
restic backup /srv/dane
restic snapshots  # lista dostepnych kopii

Automatyzacja przez cron

Niezaleznie od wybranego narzędzia, kluczem jest automatyzacja. Przyklad zadania cron uruchamianego codziennie o 2:00:

0 2 * * * /usr/local/bin/backup.sh

Skrypt backup.sh powinien zawierac logike backupu, sprawdzenie czy sie powiodl i opcjonalnie wyslanie powiadomienia. Pamietaj tez o regularnym testowaniu procesu przywracania - backup, ktorego nie mozesz przywrocic, jest bezwartosciowy.

← Poprzedni artykul Nastepny artykul →