UrBackup

Open-source client/server zálohovací systém pro centralizované zálohování více počítačů. Kompletně zdarma, souborové i image zálohy, webová administrace.

Co je UrBackup?

UrBackup je open-source zálohovací systém s architekturou client-server, který je navržen pro centralizované zálohování více počítačů na jeden zálohovací server. Projekt je vyvíjen pod licencí AGPLv3+ (GNU Affero General Public License verze 3 nebo novější), což znamená, že je kompletně zdarma k použití, modifikaci a distribuci — bez jakýchkoli licenčních poplatků, bez omezení počtu klientů a bez „premium" verze s dodatečnými funkcemi.

UrBackup byl vytvořen Martinem Raiberem, německým vývojářem, který projekt zahájil kolem roku 2012 s cílem vytvořit jednoduchý, ale spolehlivý zálohovací systém pro domácí a malé firemní prostředí. Od svého počátku se UrBackup vyznačuje praktickým přístupem — místo snahy pokrýt každý možný zálohovací scénář se zaměřuje na to, aby základní zálohovací úlohy (souborové a image zálohy více počítačů na centrální server) fungovaly spolehlivě a jednoduše.

Klíčovou vlastností UrBackup je kombinace souborových záloh (file backup) a image záloh (image backup) v jednom systému. Souborové zálohy umožňují selektivní zálohování konkrétních složek s efektivním inkrementálním režimem využívajícím hardlinks a symlinks. Image zálohy vytvářejí kompletní kopii celého disku nebo oddílu pro scénáře disaster recovery, včetně možnosti bare-metal obnovy pomocí bootovacího USB/CD.

Klíčový fakt UrBackup je kompletně zdarma — neexistuje žádná placená verze, žádné licenční poplatky, žádná omezení počtu klientů. Jedinou investicí je hardware pro zálohovací server a úložiště.

Historie a vývoj

Počátky projektu (2012–2015)

Martin Raiber zahájil vývoj UrBackup s jasnou motivací — potřeboval spolehlivý zálohovací systém pro zálohování více počítačů v domácí a malé firemní síti, ale existující open-source řešení buď nevyhovovala svou složitostí (Bacula, Amanda), nebo neměla potřebné funkce. UrBackup od počátku kombinoval souborové zálohy s image zálohami a nabízel webové rozhraní pro správu — v té době poměrně neobvyklé pro open-source zálohovací nástroje.

První verze podporovaly pouze Windows klienty, ale server mohl běžet jak na Windows, tak na Linux. Zálohovací engine byl navržen s důrazem na efektivitu — inkrementální souborové zálohy využívaly hardlinks na souborovém systému serveru, čímž se minimalizoval úložný prostor bez složité deduplikační logiky.

Rozšíření platformové podpory (2015–2018)

V dalších letech UrBackup přidal podporu pro Linux klienty (souborové zálohy) a macOS klienty. Image zálohy na Linux klientech byly přidány později a využívají jiný mechanismus než na Windows (dattobd kernel modul nebo LVM snapshots). Důležitým milníkem bylo přidání internet mode — možnosti zálohovat počítače přes internet (WAN), nejen v lokální síti. To otevřelo možnost centrálně zálohovat vzdálené pobočky nebo home office pracovníky.

Moderní vývoj (2019–současnost)

V posledních letech UrBackup pokračuje v aktivním vývoji. Byla přidána lepší podpora pro BTRFS a ZFS souborové systémy na serveru, které umožňují efektivní deduplikaci pomocí reflinks (copy-on-write). Server také získal vylepšený webový interface, podporu LDAP autentizace, archivační funkce a další vylepšení stability a výkonu.

Projekt je hostován na GitHubu a má aktivní komunitu přispěvatelů a uživatelů. Martin Raiber nadále vede vývoj jako hlavní vývojář a pravidelně vydává aktualizace s opravami chyb a novými funkcemi.

Architektura client-server

UrBackup využívá tradiční client-server architekturu. Zálohovací server je centrální komponentou, která přijímá a ukládá zálohy od všech klientů. Klienti (agenti) běží na zálohovaných počítačích a jsou zodpovědní za přípravu a přenos zálohovacích dat na server.

Server

UrBackup server běží na Linux (doporučeno) nebo Windows. Na Linuxu je server k dispozici jako balíček pro většinu distribucí (apt, yum) nebo jako Docker image. Server poskytuje webové rozhraní pro správu klientů, sledování stavu záloh, konfiguraci zálohovacích politik a obnovu dat. Webové rozhraní je přístupné z libovolného prohlížeče bez nutnosti instalace dalšího softwaru.

Server ukládá zálohy na lokální souborový systém. Pro maximální efektivitu se doporučuje použít souborový systém BTRFS nebo ZFS, které podporují reflinks (copy-on-write klonování souborů). Díky reflinks mohou inkrementální zálohy sdílet nezměněné datové bloky s předchozími zálohami na úrovni souborového systému, čímž se dramaticky snižuje spotřeba úložného prostoru bez nutnosti složité softwarové deduplikace.

Klienti

Klienti jsou k dispozici pro Windows, Linux a macOS. Windows klient je nejfunkčnější — podporuje jak souborové, tak image zálohy s kompletní VSS integrací. Linux klient podporuje souborové zálohy a image zálohy (s pomocí dattobd nebo LVM). macOS klient podporuje souborové zálohy.

Klienti po instalaci automaticky kontaktují server v lokální síti (pomocí broadcast discovery) nebo se připojí na konfigurovanou adresu serveru. Server poté automaticky přidá klienta do správní konzole a začne zálohovat podle nastavených politik.

Podporované platformy

  • Server: Linux (Ubuntu, Debian, CentOS, RHEL, Fedora, openSUSE, Arch), Windows (Server i Desktop), Docker
  • Klient Windows: Windows 7/8/10/11, Windows Server 2008 R2 a novější
  • Klient Linux: Ubuntu, Debian, CentOS, RHEL, Fedora, openSUSE, Arch a další
  • Klient macOS: macOS 10.12 Sierra a novější

Pro koho je UrBackup vhodný?

UrBackup je ideální pro několik typů uživatelů. Prvním jsou domácí uživatelé a nadšenci, kteří chtějí centralizovaně zálohovat více počítačů v domácí síti bez jakýchkoli nákladů. Druhým segmentem jsou malé firmy a organizace s omezeným IT rozpočtem, které potřebují spolehlivé zálohy, ale nemají prostředky na komerční zálohovací software.

Třetím segmentem jsou školy, neziskové organizace a veřejné instituce, kde je open-source software preferován z principiálních nebo finančních důvodů. UrBackup je také vhodný jako doplňkové zálohovací řešení — například pro zálohu pracovních stanic, zatímco servery a virtuální stroje jsou chráněny komerčním řešením.

Naopak UrBackup není vhodný pro enterprise prostředí vyžadující zálohy virtuálních strojů na úrovni hypervisoru, zálohy databází s garantovanou konzistencí, zálohu cloudových služeb (M365, AWS) nebo zálohu do cloudového úložiště. Pro tyto scénáře je třeba zvážit komerční řešení.

Tip UrBackup v kombinaci s BTRFS souborovým systémem a starým serverem nebo NAS zařízením představuje nákladově nejefektivnější zálohovací řešení pro malé organizace. Celkové náklady se omezují na hardware — software je kompletně zdarma.

Technické aspekty a design

UrBackup je napsán v jazyce C++, což přispívá k vysokému výkonu a nízké paměťové náročnosti serveru i klientů. Server je schopen efektivně spravovat zálohy desítek klientů i na skromném hardware — Raspberry Pi 4 s USB diskem může bez problémů sloužit jako zálohovací server pro domácí síť s 5–10 počítači.

Komunikace mezi serverem a klienty probíhá přes vlastní protokol UrBackup, který je optimalizován pro efektivní přenos zálohovacích dat. V lokální síti se klienti automaticky připojí k serveru pomocí UDP broadcast discovery — server pravidelně vysílá broadcastové pakety, na které klienti odpovídají, čímž se automaticky zaregistrují. Tento mechanismus eliminuje nutnost manuální konfigurace IP adres na straně klientů v LAN prostředí.

Pro vzdálené zálohy přes internet UrBackup implementuje vlastní tunelový protokol s šifrováním pomocí TLS. Klienti se připojují k serveru přes definovanou adresu a port, autentizují se pomocí unikátního klíče a veškerá komunikace je šifrována. Server může současně obsluhovat LAN i WAN klienty bez konfliktu.

Srovnání s komerčními řešeními

V porovnání s komerčními zálohovacími nástroji jako Veeam Agent, MSP360 nebo Acronis se UrBackup drží překvapivě dobře v základních zálohovacích scénářích. Souborové zálohy s inkrementálním režimem a hardlinks jsou srovnatelné s komerčními řešeními z hlediska efektivity a spolehlivosti. Image zálohy na Windows jsou rovněž na dobré úrovni díky zralé VSS integraci.

Kde UrBackup zaostává, je oblast pokročilých funkcí — chybí aplikačně konzistentní zálohy databází, záloha do cloudového úložiště, automatizované testování obnovy, pokročilý reporting a immutable zálohy. Tyto funkce jsou pro enterprise prostředí kritické, ale pro domácí uživatele a malé firmy zálohující primárně pracovní stanice jsou často nepotřebné.

Z hlediska celkových nákladů na vlastnictví (TCO) je UrBackup bezkonkurenční. Zatímco komerční řešení pro 30 pracovních stanic mohou stát $1 000–10 000 ročně (v závislosti na produktu a konfiguraci), UrBackup stojí $0 za software plus jednorázová investice do hardware. V horizontu pěti let může organizace s UrBackup ušetřit desítky tisíc korun oproti komerčním alternativám.

Komunita a podpora

Přestože UrBackup nemá komerční podporu, má aktivní komunitu uživatelů soustředěnou kolem oficiálního fóra a GitHub repozitáře. Na fóru lze najít odpovědi na běžné otázky, sdílet zkušenosti s nasazením a požádat o pomoc při řešení problémů. Martin Raiber jako hlavní vývojář je na fóru aktivní a pravidelně odpovídá na dotazy uživatelů.

GitHub repozitář slouží jako primární kanál pro hlášení chyb a navrhování nových funkcí. Issues jsou zpracovávány průběžně a důležité opravy jsou obvykle vydány v řádu týdnů. Přispěvatelé z komunity mohou rovněž navrhovat změny prostřednictvím pull requestů, i když většinu kódu stále píše hlavní vývojář.

Limity a omezení

Je důležité jasně rozumět limitům UrBackup, aby nedocházelo k nesplněným očekáváním. UrBackup nepodporuje zálohy virtuálních strojů na úrovni hypervisoru — neumí zálohovat VMware nebo Hyper-V VM přes VADP/WMI API. Pro zálohu VM je třeba nainstalovat klienta uvnitř každého VM, což je méně efektivní než agentless přístup komerčních řešení. UrBackup také nepodporuje zálohy cloudových služeb jako Microsoft 365, Google Workspace nebo AWS — pro tyto scénáře je třeba použít specializované nástroje.

Dalším omezením je absence nativního šifrování dat at-rest. Data na zálohovacím serveru nejsou ve výchozím stavu šifrována — kdo má přístup k serveru, má přístup k zálohovacím datům. Pro prostředí s regulatorními požadavky na šifrování je třeba implementovat šifrování na úrovni souborového systému (LUKS) nebo celého disku.

UrBackup v číslech

$0
Licenční náklady
AGPLv3+
Open-source licence
3
Podporované OS platformy
2012
Aktivní vývoj od roku