Po roku vývoja bol vydaný zálohovací systém restic 0.13. Poskytuje nástroje na ukladanie záloh vo verziovanom repozitári, ktorý je možné hostiť na externých serveroch a v cloudovom úložisku. Dáta sú uložené v šifrovanej forme. Pri vytváraní zálohy je možné definovať flexibilné pravidlá na zahrnutie a vylúčenie súborov a adresárov. Podpora pre Linux, macOS, Windows, FreeBSD a OpenBSD. Kód projektu je napísaný v jazyku Go a distribuovaný pod licenciou BSD.
Kľúčové vlastnosti:
- Podpora ukladania záložných kópií v lokálnom súborovom systéme, na externom server Prístup cez SFTP/SSH alebo HTTP REST, v cloudoch Amazon S3, OpenStack Swift, BackBlaze B2, Microsoft Azure Blob Storage a Google Cloud Storage, ako aj v akýchkoľvek úložných službách s backendmi rclone. Na úložisko možno použiť aj vyhradený REST server, ktorý poskytuje vyšší výkon ako iné backendy a je schopný bežať v režime iba pridávania, čím zabraňuje vymazaniu alebo úprave záloh, ak je originál ohrozený. server a prístup k šifrovacím kľúčom.
- Podpora definovania flexibilných pravidiel na vylúčenie súborov a adresárov pri vytváraní záloh (napríklad na vylúčenie protokolov, dočasných súborov a ľahko reprodukovateľných údajov zo záloh). Formát pravidiel ignorovania je známy a pripomína rsync alebo gitignore.
- Jednoduchá inštalácia, používanie a obnovenie informácií. Na prácu so zálohami stačí skopírovať jeden spustiteľný súbor, ktorý je možné použiť bez ďalších nastavení. Pre samotný spustiteľný súbor je k dispozícii opakovateľná zostava, ktorá vám umožňuje overiť si, že binárne zostavy sú vytvorené z poskytnutého zdrojového kódu.
- Podporované sú snímky, ktoré odrážajú stav konkrétneho adresára so všetkými súbormi a podadresármi v určitom časovom bode. Pri každom vytvorení novej zálohy sa vytvorí súvisiaca snímka, ktorá vám umožní obnoviť stav v danom momente. Je možné kopírovať snímky medzi rôznymi úložiskami.
- Aby sa ušetrila prevádzka, počas procesu zálohovania sa skopírujú iba zmenené údaje. Aby sa zabezpečilo efektívne ukladanie, údaje v úložisku sa neduplikujú a dodatočné snímky pokrývajú iba zmenené údaje. Systém nemanipuluje s celými súbormi, ale s blokmi s pohyblivou veľkosťou vybranými pomocou Rabinovho podpisu. Informácie sa ukladajú vo vzťahu k obsahu, nie k názvom súborov (názvy a objekty spojené s údajmi sú definované na úrovni metadát bloku). Na základe hashu SHA-256 obsahu sa vykonáva deduplikácia a eliminuje sa zbytočné kopírovanie údajov.
- Na vizuálne vyhodnotenie obsahu úložiska a zjednodušenie obnovy je možné pripojiť snímku so záložnou kópiou vo forme virtuálneho oddielu (pripojenie sa vykonáva pomocou FUSE). K dispozícii sú aj príkazy na analýzu zmien a selektívne extrahovanie súborov.
- Informácie na externých serveroch sú uložené v zašifrovanej forme (na kontrolné súčty sa používa SHA-256, na šifrovanie sa používa AES-256-CTR a na zaručenie integrity sa používajú autentifikačné kódy založené na Poly1305-AES). Systém bol pôvodne navrhnutý tak, aby zabezpečil, že záložné kópie budú uložené v nedôveryhodných prostrediach a že ak sa záložná kópia dostane do nesprávnych rúk, nemala by ohroziť systém. Šifrovanie je možné zabezpečiť pomocou prístupových kľúčov aj hesiel.
- Záložnú kópiu je možné overiť pomocou kontrolných súčtov a autentifikačných kódov, aby sa potvrdilo, že integrita súborov nie je narušená a potrebné súbory je možné obnoviť a neobsahujú skryté úpravy.
V novej verzii:
- Pridaná podpora pre negatívne vzory vylúčenia. Napríklad "--exclude '/home/user/*' --exclude '!/home/user/.config'" na vylúčenie všetkého obsahu /home/user okrem adresára /home/user/.config.
- Do príkazu „backup“ bol pridaný režim „--dry-run“, ktorý pri spustení s voľbou „--verbose“ umožňuje sledovať, ktoré súbory budú zahrnuté do zálohy bez toho, aby ste v skutočnosti vykonali akékoľvek zmeny.
- Podpora kontrolných súčtov bola pridaná do rôznych backendov úložiska na dodatočné overenie stiahnutých údajov.
- Príkaz „obnoviť“ bol optimalizovaný, vďaka čomu funguje dvakrát rýchlejšie. Vylepšený bol aj výkon príkazu „kopírovať“.
Zdroj: opennet.ru
