Úvod
Zálohování dat je nezbytnou součástí individuální i podnikové infrastruktury. Počítače s operačním systémem Linux mohou používat rsync a ssh pro usnadnění procesu.
Rsync je nástroj příkazového řádku, který umožňuje přenášet soubory do místních a vzdálených umístění. Rsync je vhodné používat, protože je standardně dodáván s většinou distribucí Linuxu. Nástroj si můžete přizpůsobit pomocí mnoha dostupných možností.
V tomto případě použití použijeme SSH v kombinaci s rsync k zabezpečení přenosu souborů.
V tomto návodu se dozvíte, jak používat rsync k zálohování dat . Průvodce uvede několik příkladů, které ilustrují, jak proces funguje.
Předpoklady
- Sudo nebokořen oprávnění nebo uživatele s přístupem k záložním a cílovým adresářům
- Přístup SSH na server pomocí příkazového řádku/okna terminálu
- Rsync nainstalovaný na místním a cílovém počítači
Základní syntaxe Rsync pro místní a externí přenosy
Syntaxe pro použití nástroje rsync se liší pro místní a vzdálené přenosy.
Pro místní zálohy se syntaxe řídí tímto základním vzorem:
rsync
options
SOURCE DESTINATION
Pro přenos souborů do externího umístění použijeme trochu jiný vzor:
rsync
options
SOURCE [email protected]_or_hostname:DESTINATION
V obou případech je zdrojem a cílem adresář nebo cesta k souboru.
Zálohování dat pomocí Rsync
Pro lepší pochopení toho, co rsync dělá, použijeme podrobný přepínač -v
. Navíc, protože budeme zálohovat data v adresářích, použijeme režim archivace -a
pro rekurzivní synchronizaci. Existuje mnoho možností a příkladů rsync, takže použijte kteroukoli z nich, kterou potřebujete pro svůj případ použití.
Rsync Dry Run – Bezpečnostní opatření
Nástroj rsync vám umožňuje manipulovat s daty různými způsoby. Při zálohování souborů proto buďte opatrní. Pokud použijete špatnou možnost nebo nesprávný cíl, můžete skončit smícháním dat. Ještě horší je, že můžete neúmyslně přepsat nebo smazat soubory.
Z tohoto důvodu použijte --dry-run
možnost potvrdit, že nástroj dělá to, co chcete. Může dojít k náhodné ztrátě dat, ale tato možnost tomu pomáhá zabránit.
Pro jednoduché převody možná nebudete muset používat --dry-run
, ale pokud se jedná o větší soubor dat, důrazně vám to doporučujeme.
Použijte základní formát syntaxe a přidejte --dry-run
:
rsync
options
--dry-run SOURCE DESTINATION
K místnímu zálohování dat použijte Rsync
Začneme provedením zálohy adresáře na stejném počítači se systémem Linux. Cesta může být libovolné místo – jiný oddíl, pevný disk, externí úložiště atd.
Použijteúplnou cestu pro zdroj i cíl abyste se vyhnuli chybám.
Chcete-li například zálohovat Dir1 z Dokumentů na /media/hdd2/rscync_backup , použijte příkaz rsync v tomto tvaru:
rsync -av /home/test/Documents/Dir1 /media/hdd2/rsync_backup
Výstup zobrazuje seznam přenesených souborů a adresářů a další podrobnosti o přenosu.
Použijte Rsync k zálohování dat přes síť
Pro bezpečné zálohování dat přes síť používá rsync pro přenosy SSH. Váš server musí být nastaven tak, aby umožňoval připojení SSH.
Jakmile se vám podaří připojit ke vzdálenému počítači přes SSH, můžete začít zálohovat data do umístění na tomto počítači.
Chcete-li například zálohovat Dir1 k zálohování na jiném počítači v síti zadejte:
rsync -av /home/test/Documents/Dir1 [email protected]:/home/test/backup
Výstup obsahuje seznam adresářů a souborů rsync přenesených na jiný počítač.
Můžete zkontrolovat, zda jsou soubory skutečně na vzdáleném serveru:
Pokud se připojujete poprvé, budete muset zadat své heslo a potvrdit, až se zobrazí výzva. Pokud se chcete připojit jako aktuální uživatel, není potřeba zadávat uživatelské jméno pro vzdálené přenosy.
Příklad, který jsme zde použili, předpokládá, že SSH používá výchozí port. Pokud potřebujete určit jiný port pro připojení SSH, použijte -e
flag a zadejte možnosti SSH.
Chcete-li zadat například port 4455, spusťte výše uvedený příkaz v tomto formátu:
rsync -av -e 'ssh -p 4455' /home/test/Documents/Dir1 [email protected]:/home/test/backup
V případě potřeby můžete zdrojové soubory po přenesení do jiného umístění smazat.
Komprimovat data při zálohování pomocí Rsync
Chcete-li ušetřit místo, můžete data před přenosem na jiné místo zkomprimovat. Ke komprimaci dat můžete použít vestavěnou možnost rsync, nebo k tomu můžete použít jiný nástroj před spuštěním rsync.
Pro komprimaci dat během přenosu použijte -z
přepněte pomocí rsync
příkaz.
rsync -avz /home/test/Documents/Dir1 [email protected]:/home/test/backup
Další možností je použít zip
zazipujte soubory nebo adresář a poté spusťte rsync
. V našem případě zazipujeme Dir1 do Dir.zip :
zip /home/test/Documents/Dir1.zip /home/test/Documents/Dir1
Poté tento soubor přeneste do jiného umístění:
rsync -avz /home/test/Documents/Dir1.zip [email protected]:/home/test/backup
Nyní máte zazipovanou kopii svého adresáře na vzdáleném serveru. Můžete to také udělat pro místní přenosy, pokud chcete mít zálohu na jiném disku nebo oddílu.