Dostępny system tworzenia kopii zapasowych Restic 0.15

Opublikowano wersję systemu kopii zapasowych restic 0.15. Zapewnia on szyfrowane przechowywanie kopii zapasowych w repozytorium z obsługą wersji. System jest początkowo zaprojektowany do przechowywania kopii zapasowych w środowiskach, którym nie można zaufać, a jeśli kopia zapasowa wpadnie w niepowołane ręce, system nie powinien zostać naruszony. Możliwe jest zdefiniowanie elastycznych reguł uwzględniania i wykluczania plików i katalogów podczas tworzenia kopii zapasowej (format reguł przypomina rsync lub gitignore). Obsługuje systemy Linux, macOS, Windows, FreeBSD i OpenBSD. Kod projektu jest napisany w języku Go i jest dystrybuowany na licencji BSD.

Kopie zapasowe mogą być przechowywane w lokalnym systemie plików, na nośniku zewnętrznym serwer Dostęp przez SFTP/SSH lub HTTP REST w chmurach Amazon S3, OpenStack Swift, BackBlaze B2, Microsoft Azure Blob Storage i Google Cloud Storage, a także w dowolnych usługach pamięci masowej z backendami rclone. Do przechowywania danych można również użyć dedykowanego serwera REST, który zapewnia wyższą wydajność niż inne backendy i może działać w trybie tylko do dołączania, zapobiegając usunięciu lub modyfikacji kopii zapasowych w przypadku naruszenia oryginału. serwer i dostęp do kluczy szyfrujących.

Obsługiwane są migawki, odzwierciedlające stan określonego katalogu ze wszystkimi plikami i podkatalogami w określonym punkcie w czasie. Za każdym razem, gdy tworzona jest nowa kopia zapasowa, tworzona jest powiązana migawka, umożliwiająca przywrócenie stanu w danym momencie. Migawki można kopiować między różnymi repozytoriami. Aby zaoszczędzić ruch, podczas procesu tworzenia kopii zapasowej kopiowane są tylko zmienione dane. Aby wizualnie ocenić zawartość repozytorium i uprościć odzyskiwanie, migawkę z kopią zapasową można zamontować jako partycję wirtualną (montowanie odbywa się za pomocą FUSE). Dostępne są również polecenia do analizowania zmian i selektywnego wyodrębniania plików.

System nie manipuluje całymi plikami, ale raczej blokami o zmiennym rozmiarze wybranymi za pomocą podpisu Rabina. Informacje są przechowywane w odniesieniu do zawartości, a nie nazw plików (nazwy i obiekty związane z danymi są definiowane na poziomie metadanych bloku). Na podstawie skrótu SHA-256 zawartości wykonywana jest deduplikacja i eliminacja zbędnego kopiowania danych. Na serwerach zewnętrznych informacje są przechowywane w postaci zaszyfrowanej (SHA-256 jest używane do sum kontrolnych, AES-256-CTR do szyfrowania, a kody uwierzytelniania oparte na Poly1305-AES są używane do zagwarantowania integralności). Możliwe jest sprawdzenie kopii zapasowej za pomocą sum kontrolnych i kodów uwierzytelniania, aby potwierdzić, że integralność plików nie została naruszona.

W nowej wersji:

  • Wprowadzono nowe polecenie przepisywania, które umożliwia usunięcie niepotrzebnych danych z migawki, gdy pliki, które pierwotnie nie były przeznaczone do utworzenia kopii zapasowej (na przykład pliki zawierające poufne informacje lub bardzo duże dzienniki, które nie mają żadnej wartości), zostały przypadkowo uwzględnione w kopii zapasowej.
  • Polecenie tworzenia kopii zapasowej ma teraz opcję „--read-concurrency” umożliwiającą ustawienie poziomu paralelizmu podczas odczytu plików, co umożliwia szybsze kopiowanie na szybkich dyskach, takich jak NVMe.
  • Polecenie tworzenia kopii zapasowej zostało zaktualizowane o opcję „--no-scan” umożliwiającą wyłączenie etapu skanowania drzewa plików.
  • Polecenie prune znacząco (nawet o 30%) zmniejszyło zużycie pamięci.
  • Polecenie restore ma opcję „--sparse” umożliwiającą efektywne odzyskiwanie plików z dużymi pustymi obszarami.
  • Wprowadzono obsługę przywracania łączy symbolicznych na platformie Windows.
  • macOS obsługuje teraz montowanie repozytorium kopii zapasowych za pomocą macFUSE.

Źródło: opennet.ru

Dodaj komentarz