it:server:rsync

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
it:server:rsync [2023/01/15 16:57] Petr Nosekit:server:rsync [2024/12/29 22:04] (aktuální) Petr Nosek
Řádek 36: Řádek 36:
   * https://www.hukot.net/community/tutorials/kopirovani-souboru-pomoci-rsync-pres-ssh   * https://www.hukot.net/community/tutorials/kopirovani-souboru-pomoci-rsync-pres-ssh
   * https://www.forpsicloud.cz/navody/seznam-navodu/kveten-2020/jak-nastavit-rsync-zalohovani.aspx   * https://www.forpsicloud.cz/navody/seznam-navodu/kveten-2020/jak-nastavit-rsync-zalohovani.aspx
 +
 +
 +
 +===== Synchronizace 1:1 =====
 +
 +Tady příklad modelové situace. Data mám na SD kartě Raspberry Pi. Chci, aby se každý den synchronizovala data na pevný disk, který mám také připojený k Raspberry Pi. Také chci, aby se v cílovém adresáři smazaly soubory, které jsem odstranil v zdrojovém adresáři. Jendoduše - synchronizace 1:1.
 +
 +To mi zajistí tento skript:
 +
 +<code bash>
 +#!/bin/bash
 +
 +SRC='/mnt/source-data/'
 +DST='/mnt/destination-data/'
 +
 +
 +
 +RSYNC=$(command -v rsync)
 +
 +if [ ! -e $SRC ]; then
 +        echo "Error: Source path does not exists."
 +        exit 1
 +fi
 +
 +
 +if [ ! -e $DST ]; then
 +        echo "Error: Destination path does not exists."
 +        exit 1
 +fi
 +
 +$RSYNC -aHAXx --numeric-ids --progress --delete $SRC $DST
 +</code>
 +
 +
 +===== Zálohování dat z poškozeného disku =====
 +
 +Při přenosu dat z poškozeného disku je důležité minimalizovat riziko přenosu neúplných souborů a zajistit přehled o průběhu operace. Příkaz níže zajišťuje bezpečné kopírování dat:
 +
 +<code bash>
 +rsync -av --progress --size-only --partial-dir=/home/user/novydisk/temp/ --timeout=20 stary-disk/2024-* /home/user/novydisk/
 +</code>
 +
 +===== Parametry =====
 +
 +  * **`-a`**: Archivní režim, který zachová oprávnění, časové značky a symbolické odkazy.
 +  * **`-v`**: Zobrazí podrobné informace o probíhající operaci.
 +  * **`--progress`**: Zobrazí průběh kopírování pro každý soubor.
 +  * **`--size-only`**: Porovnává pouze velikost souborů, což zrychluje kontrolu, pokud jsou časové značky nespolehlivé.
 +  * **`--partial-dir=/home/user/novydisk/temp/`**: Částečně přenesené soubory ukládá do dočasné složky, aby nedošlo k jejich zanechání v cílovém adresáři.
 +  * **`--timeout=20`**: Nastaví maximální dobu čekání na odpověď při čtení dat (v sekundách).
 +
 +==== Co tím dosáhnete ====
 +
 +  - **Bezpečný přenos**: Neúplné soubory nejsou ponechány v cílové složce, ale zůstávají v dočasné složce pro další pokusy.
 +  - **Efektivita**: Parametr `--size-only` zajišťuje, že již přenesené a nezměněné soubory nebudou kopírovány znovu
 +  - **Přehlednost**: Díky `--progress` máte přehled o stavu přenosu v reálném čase. Dále pak vidím poškozené soubory (ty, které se nepodařilo přenést celé) v jedné složce.
 +
 +Tento příkaz je ideální pro záchranu souborů z poškozeného disku, kde hrozí problémy při čtení dat. Složením všech parametrů je dosaženo bezpečného a efektivního přenosu dat.
 +
 +
 +
  
  • it/server/rsync.1673801872.txt.gz
  • Poslední úprava: 2023/01/15 16:57
  • autor: Petr Nosek