# Jednoduché zálohování pomocí Rsync

#### Co je rsync

Rsync je aplikace pro unixové systémy, která dokáže synchronizovat soubory a složky z jednoho umístění do jiného. Přitom, pokud je to možné, minimalizuje objem přenášených dat pomocí delta encodingu.

V Arch Linuxu můžete použít rsync k zálohování souborů na externí disk nebo na vzdálený server.

Může být použit k synchronizaci dat mezi dvěma umístěními, jako je například zálohování dat z disku na externí úložiště.

[![rsync-1.jpg](https://wiki.arch-linux.cz/uploads/images/gallery/2023-04/scaled-1680-/rsync-1.jpg)](https://wiki.arch-linux.cz/uploads/images/gallery/2023-04/rsync-1.jpg)

#### Instalace Rsync  


Nejprve musíte nainstalovat balíček rsync, pokud již není nainstalován. Pro instalaci použijte příkaz:

`sudo pacman -S rsync`

- Poté připojte externí disk nebo přistupte k vzdálenému serveru, ke kterému chcete zálohovat data.
- Spusťte příkaz rsync s následujícími parametry:

` `

```javascript
rsync -avz --delete /home/user/Documents/ /mnt/backup/Documents/
```

Tento příkaz zkopíruje obsah adresáře "/home/user/Documents" do složky "/mnt/backup/Documents" s možností synchronizace souborů a adresářů, které se změnily od posledního spuštění. Volba "-**a**" zajistí, že se zachovají všechny atributy souborů, jako jsou oprávnění, časy a vlastníci. Volba "**-v**" zobrazí informace o průběhu zálohování a volba "**-z**" komprimuje přenos dat, což může urychlit přenos, pokud zálohujete na vzdálené zařízení. Volba "-**-delete**" zajistí, že soubory a adresáře, které byly odstraněny ze zdrojového adresáře, budou také odstraněny z cílového umístění.

```bash
rsync -av --delete -e ssh /cesta/k/souborum/ jmenouzivatele@adresa:/cesta/k/zalohovacimu/ulozisti

```

Pokud potřebujete přihlašovací údaje k vzdálenému serveru, použijte tento příkaz:

- `-e ssh` - používá ssh pro připojení k vzdálenému serveru
- `jmenouzivatele` - vaše uživatelské jméno na vzdáleném serveru
- `adresa` - adresa vzdáleného serveru
- `/cesta/k/zalohovacimu/ulozisti/` - cesta k složce na vzdáleném serveru, kam chcete data zálohovat.


##### Automatické zálohy

Zde je příklad skriptu pro automatické zálohy **Rsync** v Arch Linux:

Otevřete editor textu (např. nano) a vytvořte nový soubor:

```bash
sudo nano /usr/local/bin/rsync-backup.sh
```

Do souboru vložte následující skript:

```bash
#!/bin/bash

# Nastavte zdrojovou a cílovou složku
SOURCE="/home/user/Documents/"
DESTINATION="/mnt/backup/Documents/"

# Spusťte příkaz rsync s nastavením pro zálohování
rsync -avz --delete "$SOURCE" "$DESTINATION"

```

Uložte soubor a uzavřete textový editor

Nastavte soubor jako spustitelný:

```
sudo chmod +x /usr/local/bin/rsync-backup.sh
```

Nakonfigurujte plánovač úloh **cron**, aby spouštěl skript s určitou četností (např. každý den v 2:00 ráno):

```
sudo crontab -e
```

Vložte následující řádek do konfiguračního souboru **cron** (změňte čas spouštění podle potřeby):

```
0 2 * * * /usr/local/bin/rsync-backup.sh
```

Uložte soubor a uzavřete editor textu.

Skript by nyní měl automaticky spouštět zálohu každý den v 2:00 ráno. Pokud chcete změnit nastavení zdrojové a cílové složky, jednoduše upravte proměnné `SOURCE` a `DESTINATION` ve skriptu.