Dostępny system tworzenia kopii zapasowych Restic 0.13

Po roku rozwoju zaprezentowano wersję restic 0.13 systemu tworzenia kopii zapasowych, który zapewnia narzędzia do zapisywania kopii zapasowych w wersjonowanym repozytorium, które może być hostowane na serwerach zewnętrznych i w chmurze. Dane są przechowywane w formie zaszyfrowanej. Możesz zdefiniować elastyczne reguły uwzględniania i wykluczania plików i katalogów podczas tworzenia kopii zapasowej. Obsługuje pracę na systemach Linux, macOS, Windows, FreeBSD i OpenBSD. Kod projektu jest napisany w Go i rozpowszechniany na licencji BSD.

Najważniejsze cechy:

  • Wsparcie przechowywania kopii zapasowych w lokalnym systemie plików, na serwerze zewnętrznym z dostępem poprzez 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 dowolnym magazynie dla których istnieją backendy rclone. Do organizacji pamięci można również wykorzystać specjalny serwer odpoczynku, który zapewnia wyższą wydajność w porównaniu do innych backendów i może działać w trybie tylko dopisywania, co nie pozwoli na usunięcie ani zmianę kopii zapasowych, jeśli serwer źródłowy i dostęp do kluczy szyfrowania są skompromitowany.
  • Obsługa definiowania elastycznych reguł wykluczania plików i katalogów podczas tworzenia kopii zapasowych (na przykład wykluczania dzienników, plików tymczasowych i łatwo odtwarzalnych danych z kopii zapasowych). Format reguł ignorowania jest znajomy i przypomina rsync lub gitignore.
  • Łatwe w instalacji, użytkowaniu i przywracaniu informacji. Aby pracować z kopiami zapasowymi, wystarczy skopiować jeden plik wykonywalny, którego można używać bez dodatkowych ustawień. Dla samego pliku wykonywalnego dostępna jest powtarzalna kompilacja, umożliwiająca samodzielne sprawdzenie, czy zestaw binarny został utworzony na podstawie dostarczonego kodu źródłowego.
  • Obsługiwane są migawki odzwierciedlające stan określonego katalogu ze wszystkimi plikami i podkatalogami w określonym momencie. Za każdym razem, gdy tworzona jest nowa kopia zapasowa, tworzona jest powiązana z nią migawka, umożliwiająca przywrócenie stanu z tego momentu. Możliwe jest kopiowanie migawek pomiędzy różnymi repozytoriami.
  • Aby zaoszczędzić ruch, podczas procesu tworzenia kopii zapasowej kopiowane są tylko zmienione dane. Aby zapewnić efektywne przechowywanie, dane w repozytorium nie są duplikowane, a dodatkowe migawki obejmują jedynie zmienione dane. System nie manipuluje całymi plikami, ale blokami o zmiennym rozmiarze, wybranymi za pomocą sygnatury Rabina. Informacje są przechowywane w odniesieniu do treści, a nie nazw plików (nazwy i obiekty powiązane z danymi są definiowane na poziomie metadanych bloku). W oparciu o hash treści SHA-256 wykonywana jest deduplikacja i eliminowane jest niepotrzebne kopiowanie danych.
  • Aby wizualnie ocenić zawartość repozytorium i ułatwić odzyskiwanie, można zamontować migawkę z kopią zapasową w postaci partycji wirtualnej (montaż odbywa się za pomocą FUSE). Dostępne są także polecenia służące do analizowania zmian i selektywnego wyodrębniania plików.
  • Informacje na serwerach zewnętrznych przechowywane są w postaci zaszyfrowanej (do sum kontrolnych używany jest SHA-256, do szyfrowania AES-256-CTR, a do zapewnienia integralności wykorzystywane są kody uwierzytelniające oparte na Poly1305-AES). System został pierwotnie zaprojektowany w taki sposób, aby zapewnić, że kopie zapasowe będą przechowywane w niezaufanych środowiskach i że jeśli kopia zapasowa dostanie się w niepowołane ręce, nie powinna zagrozić systemowi. Szyfrowanie można zapewnić za pomocą zarówno kluczy dostępu, jak i haseł.
  • Istnieje możliwość sprawdzenia kopii zapasowej za pomocą sum kontrolnych i kodów uwierzytelniających, aby potwierdzić, że integralność plików nie jest naruszona, a niezbędne pliki można przywrócić i nie zawierają ukrytych modyfikacji.

W nowej wersji:

  • Dodano obsługę negatywnych wzorców wykluczania. Na przykład „--exclude '/home/user/*' --exclude '!/home/user/.config'', aby wykluczyć całą zawartość /home/user z wyjątkiem katalogu /home/user/.config.
  • Do polecenia „backup” dodano tryb „--dry-run”, który po uruchomieniu z opcją „--verbose” umożliwia śledzenie, które pliki zostaną uwzględnione w kopii zapasowej, bez wprowadzania jakichkolwiek zmian.
  • Do różnych backendów pamięci masowej dodano obsługę sum kontrolnych w celu dodatkowej weryfikacji pobranych danych.
  • Polecenie „przywróć” zostało zoptymalizowane, dzięki czemu działa dwukrotnie szybciej. Poprawiono także działanie polecenia „kopiuj”.

Źródło: opennet.ru

Dodaj komentarz