Linux E X P R E S

Facebook

BackupPC: Výkonný a komplexní nástroj pro snadné zálohování dat

backuppc.jpg

Zálohování není oblíbenou činností nikoho. Nejrůznější programy se nám proto snaží tuto činnost ulehčit, jak to jen jde. Každý z nich na to ale jde po svém. V tomto článku se podíváme na jeden méně známý program, který by si pravděpodobně zasloužil více pozornosti, než se mu dostává. 


Zálohování mnoha způsoby

Aplikace BackupPC je ideální na zálohování souborů/složek z jiných strojů na pevný disk. Se zálohovaným strojem se domluví prostřednictvím SSH, rsync, nebo SMB protokolu. V ostatních případech lze vzdálené médium připojit prostřednictvím např. FUSE. BackupPC pak samozřejmě nemá problémy se zálohováním lokálních souborů. Pro samotný přenos se aplikace pokouší využít protokol rsync, který snižuje nároky na síť i datová úložiště. Zálohy samotné lze iniciovat buď ručně, nebo prostřednictvím zálohovacího plánu. Deduplikace, komprese i odstranění přebytečných záloh je rovněž automatizováno poměrně sofistikovaným způsobem.

Deduplikací je v tomto případě míněno omezení výskytu totožných souborů napříč zálohami různých strojů z různých období na jediný výskyt.

Aplikace v Perlu s webovým ovládáním

Samotný backend je napsaný v Perlu. Tím je umožněno jej snadno rozšiřovat prostřednictvím dalších perlovských modulů. Pro ty z vás, kteří k tomuto jazyku chováte z jakéhokoliv důvodu antipatie, je k němu přibaleno plnohodnotné CGI webové rozhraní. Plnohodnotné v tomto případě znamená, že nemusíte nikdy otevřít konfigurační soubory, i když vaše požadavky nejsou úplně běžné.

Hlavní okno webového rozhraní se souhrnnými informacemi Hlavní okno webového rozhraní se souhrnnými informacemi

Instalace a konfigurace

Instalační balíček je obsažen v drtivé většině distribucí. Jeho součástí je rovnou i konfigurační soubor pro Apache a související webové rozhraní. Seznam závislostí pak krom Apache a Perlu doplňuje samba-client, a pár elementárních knihoven pro komprimaci. Poinstalační proces poté zajistí zadání hesla, které následně chrání přístup přes webové rozhraní. Tím je instalace hotová. Konfiguraci lze pohodlně provádět přes web z adresy http://localhost/backuppc, kde se po přihlášení (uživatel backuppc, zvolené heslo) objeví souhrnné info o stavu služby. Nyní je vhodné nastavit obecné volby, které se pak použijí jako výchozí pro každý zálohovaný stroj.

Obecná konfigurace

Základní nastavení najdete vlevo pod položkou Edit Config. V hlavní části je pak pro přehlednost rozdělena na jednotlivé záložky. Jsou jimi:

  • Hosts – Seznam zálohovaných strojů a uživatelů webového rozhraní s povoleným přístupem.

  • Xfer – Nastavení přenosu mezi zálohovaným a zálohovacím strojem, které soubory zálohovat a které ne.

  • Email – Nastavení kontaktních adres, četnosti informování a předloh jednotlivých zpráv.

  • CGI – Nastavení webového rozhraní, aktivace přídavných modulů.

  • Server – Cesty k programům, omezení zpracování ve více vláknech.

  • Backup Settings – Kde a jak hledat zálohované stroje.

  • Schedule – Plánování vytváření a mazání záloh.

Nastavení parametrů zálohování Nastavení parametrů zálohování

Vyčerpávající popis každé konfigurační volby lze najít v offline dokumentaci po kliknutí na její název, což považuji za geniální řešení.

Ukázka vestavěné nápovědy pro konfigurační volby Ukázka vestavěné nápovědy pro konfigurační volby

Přidání stroje a konkrétnější nastavení

Do správy strojů se dostanete z levého menu odkazem Edit Hosts. Zde lze připsat název stroje a seznam. Ve výchozím stavu bude tento stroj vyhledán prostřednictvím DNS, kterému bude jako dotaz zasláno jméno stroje. Toto lze však změnit zadáním adresy (IP nebo DNS) v konfiguraci hosta (Backup Settings | ClientNameAlias). Předvyplněné volby dávají najevo, že všechny konfigurační volby byly přejaty z nastavení serveru. Každou je ale možné změnit dle chuti.

Připojení k vzdálenému stroji

Připojení přes SMB je jednoduché na nastavení, ke konfiguraci a zprovoznění stačí pouze uvést jméno a heslo pro SMB přihlášení. Automatická komunikace přes SSH je ale o něco ošemetnější a vyžaduje práci s řádkou.

Nejprve se přepněte na správného uživatele a do jeho domovského adresáře

su backuppc - && cd ~

Následně si vygenerujte klíč oblíbeného typu a délky (např. RSA, 4096 bitů) pro potřeby zálohování do výchozího umístění. Podotýkám, že je nutné jej vytvořit bez passphrase, nebo použít ssh-agenta, aby mohla aplikace fungovat bez zásahu uživatele. Pro ostatní hosty pak můžete používat ten samý klíč, nebo si do stejného umístění vygenerovat další, s jiným názvem.

ssh-keygen -t rsa -b 4096 -C "pro BackupPC server"

Nyní jeho jeho veřejnou část zkopírujte na vzdálený stroj.

ssh-copy-id -i ~/.ssh/odpovidajici_klic uzivatel@zalohovany-stroj. cz //před cz odstraňte mezeru

Ověříte tak správnou funkci ssh spojení a rovnou zabezpečíte zálohovaný stroj proti přihlášení stejným klíčem odjinud tak, že do souboru ~/.ssh/authorized_keys přidáte na začátek řádku se svým klíčem omezující direktivu. Na začátek původního řádku:

ssh-rsa ABwIALyjLzVFTrE9Zap5x/oqa8== pro BackupPC server

… pak přidejte toto:

from="zalohovaci-stroj.cz" ssh-rsa ABwIALyjLzVFTrE9Zap5x/oqa8== pro BackupPC server

Direktiva from akceptuje doménové jméno, IP adresy, i žolíkové znaky * a ?.

Přehled zálohovaných strojů Přehled zálohovaných strojů

Přehled jednotlivých záloh stroje Přehled jednotlivých záloh stroje

Plánování záloh

Kdy a jak zálohovat, lze přehledně nastavit na záložce Schedule. Zde určíte, po kolika dnech dělat plné zálohy, kolik jich uchovávat, minimální množství a maximální stáří zálohy. To tedy znamená, že pokud bude některá záloha starší než nastavený limit, a zároveň bude dostupné alespoň ono minimum záloh, bude ta stará vymazána. Obdobné volby se týkají inkrementálních záloh, kde je navíc možnost ovlivnit, zda budou inkrementální zálohy proti poslední plné záloze, nebo proti jiné inkrementální.

Inkrementální záloha zálohuje pouze soubory rozdílné oproti jiné (nikoli nezbytně poslední) záloze.

Další sekce se zabývá preferovaným časem pro zálohování. BackupPC během tzv. WakeUp okamžiků pinguje jednotlivé zálohované stroje. Pokud je několik posledních pokusů úspěšných, je stroj vyhodnocen jako místní a záloha je naplánována na preferovanou dobu. Pokud je naopak stroj vyhodnocen jako občasný návštěvník, zálohování započne při prvním možném WakeUpu.

Plánování záloh Plánování záloh

Obnovení dat

Po výběru vhodného hosta z roletkového menu vlevo se k jeho zálohám dostanete prostřednictvím položky Browse backups. Objeví se stromová struktura zálohy, ze které lze vybrat soubory k obnově. Pro volbu zálohy z jiného termínu lze využít roletkové menu v záhlaví stránky.

Výběr obnovovaných souborů Výběr obnovovaných souborů

Po potvrzení tlačítkem Restore selection dostanete na výběr, zda se mají vybrané soubory přímo obnovit prostřednictvím nastaveného komunikačního kanálu (SSH, SMB, …), nebo je chcete jen stáhnout v archívu pro vlastní potřebu.

Způsob obnovení Způsob obnovení

Porovnání s ostatními

BackupPC je plnohodnotné zálohovací řešení, které je díky svému dlouholetému vývoji už poměrně vyzrálé. Poradí si i s konkurenční platformou a je předpřipraveno v drtivé většině distribucí. Na rozdíl od rsnapshotu umí BackupPC komprimovat zálohy a také deduplikovat identické soubory. Oproti duplicity pak disponuje propracovaným systémem na odmazávání starých záloh. Když k tomu přičteme jednoduché nasazení, praktické webové rozhraní a přítomnost detailní dokumentace, zaslouží si tento program vaši pozornost při dalším zvažování, jak budete zálohovat.

Diskuze (7) Nahoru