Rsync – Efektivní nástroj pro synchronizaci a zálohování
-
Rsync – Efektivní nástroj pro synchronizaci a zálohování
Co je Rsync?
Rsync je nástroj pro Linux a Unix, který umožňuje efektivní kopírování a synchronizaci souborů a adresářů mezi dvěma umístěními. Díky své rychlosti a flexibilitě je skvělý pro pravidelné zálohování a přenos dat.
Výhody Rsync
- Rychlost a efektivita: Přenáší pouze změněné nebo nové soubory.
- Flexibilita: Umožňuje lokální i vzdálenou synchronizaci přes SSH.
- Bezpečnost: Možnost šifrovaného přenosu přes SSH.
- Automatizace: Lze snadno použít v shell skriptech nebo cron úlohách.
Základní Syntaxe
rsync [volby] zdroj cílČasté volby
- -a: Archivní režim (zachovává atributy jako vlastnictví, oprávnění atd.).
- -v: Verbose (zobrazuje podrobné informace o procesu).
- -h: Human-readable (přehledné zobrazování velikostí)
- -z: Komprimuje data během přenosu (pro zrychlení).
- -e ssh: Umožňuje přenos přes SSH.
- -delete: Smaže soubory v cílovém umístění, které nejsou ve zdrojovém.
Příklady použití Rsync
1. Základní kopírování souborů a složek
Synchronizace adresáře „data“ z místního do jiného adresáře na stejném disku:
rsync -avh /domaci/data/ /domaci/zaloha/data/2. Kopírování přes SSH na vzdálený server
Přenese obsah adresáře „data“ na vzdálený server s IP adresou 192.168.1.10:
rsync -avh -e ssh /domaci/data/ uzivatel@192.168.1.10:/domaci/zaloha/data/3. Kopírování a mazání souborů, které již nejsou ve zdroji
Kopírování s možností smazání všech souborů v cíli, které nejsou ve zdroji:
rsync -avh --delete /domaci/data/ /domaci/zaloha/data/Jednoduchý zálohovací skript s Rsync
Tento skript provede zálohu složky /home/uzivatel/data do složky /backup/data. Stačí zkopírovat a upravit cesty podle potřeby.
- Vytvoř nový skript:
nano ~/zaloha.sh- Vlož následující kód:
#!/bin/bash # Nastavení cesty ke zdroji a cíli ZDROJ="/home/uzivatel/data/" CIL="/backup/data/" # Spuštění rsync s potřebnými volbami rsync -avh --delete "$ZDROJ" "$CIL" # Výpis zprávy o úspěchu echo "Záloha dokončena: $(date)"-
Skript ulož a ukonči editor.
-
Nastav spustitelný příznak skriptu
chmod +x ~/zaloha.sh- Skript spusť:
./zaloha.shSkript provede synchronizaci mezi složkami a vypíše potvrzení o dokončení s aktuálním časem.
Obnova dat pomocí Rsync
Před obnovou se ujisti, že máš správnou cestu ke zdroji (místo, kde máš zálohu) a cíl (místo, kam chceš soubory obnovit).
Příklad obnovy lokálních souborů
Pokud záloha existuje v adresáři
/backup/data/a chceš obnovit soubory do/home/uzivatel/data/, použij následující příkaz:rsync -avh /backup/data/ /home/uzivatel/data/Obnova s možností mazání nepotřebných souborů
Pokud chceš obnovit data a zároveň odstranit soubory v cílové složce, které nejsou ve zdrojové složce (používá se při obnově na původní stav), přidej volbu --delete:
rsync -avh --delete /backup/data/ /home/uzivatel/data/Obnova ze vzdáleného serveru
Pokud je záloha na vzdáleném serveru, obnovu můžeš provést podobně, přidáním
-e ssha zadáním vzdálené adresy:rsync -avh -e ssh uzivatel@192.168.1.10:/backup/data/ /home/uzivatel/data/Automatizace záloh pomocí Cron
- Otevři cron editor:
crontab -e- Přidej řádek:
0 2 * * * /home/uzivatel/zaloha.shTento příkaz zajistí, že se záloha spustí každý den ve 2:00.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Registrovat Přihlásit se