Jak mohu použít Rsync k zálohování webové stránky Ispconfig?

Procédure

Co je to Rsync?

Rsync je program pro synchronizaci souborů z příkazového řádku. Umožňuje kopírovat soubory z jednoho místa na druhé jejich synchronizací podle zdroje.

Při prvním zálohování souborů provede Rsync úplnou zálohu podle zdroje. Poté provede částečné zálohy dat. Ve skutečnosti bude zálohovat pouze zdrojové soubory, které byly od poslední zálohy změněny.

Jak generujete klíče RSA v systému ISPConfig?

1. Připojte se k serveru ISPConfig pomocí SSH a zadejte následující příkaz:

$ ssh-keygen -t rsa -b 2048

Po vygenerování budou klíče umístěny do složky"/root/.ssh/id_rsa" na vašem soukromém serveru.

Nezadávejte přístupovou frázi, ověřte ji stisknutím klávesy"Enter" na klávesnici. Jakmile zadáte přístupovou frázi, bude systematicky vyžadována, abyste se mohli připojit ke vzdálenému zálohovacímu prostoru.

  • id_rsa: toto je váš soukromý klíč, který se nesmí šířit.
  • id_rsa.pub: toto je váš veřejný klíč.

2. Veřejný klíč přeneste do svého online zálohovacího prostoru pomocí příkazu ssh-copy-id.

$ ssh-copy-id -i /root/.ssh/id_rsa.pub user@remote_server
  • User: musí být nahrazen příslušným identifikátorem
  • Remote_Server: musí být nahrazen IP adresou záložního serveru.

Po potvrzení příkazu budete požádáni o heslo uživatele, abyste se mohli připojit k serveru a nahrát soubor"id_rsa.pub".

Nastavení skriptu online zálohování pomocí Rsync.

Níže uvedený skript vám umožní zálohovat data na online zálohovací prostor LWS.

1. Vytvořte soubor sauvegarde.sh ve složce skriptů:

nano /scripts/backup.sh.

2. Zkopírujte a vložte níže uvedený skript a uložte skript současným kliknutím na klávesy [CTRL] + [X].

#!/bin/sh day='date+%d-%B-%Y' log="/logs/" local="/public_html/" distant="/files/" hostssh="ip_serveur" userssh="login" echo "-------------------------------------------------------------" > $log/backup_$day.log # název zálohy v logu echo "Backup of $local on $(date +%d-%B-%Y)" >> $log/backup_$day.log echo "-------------------------------------------------------------" >> $log/backup_$day.log # čas zahájení přenosu v protokolu echo "Backup start time: $(date +%H:%M:%S)" >> $log/backup_$day.log echo "-------------------------------------------------------------" >> $log/backup_$day.log # přenos souboru rsync -az --stats -e ssh $local $userssh@$hostssh:$distant >> $log/backup_$day.log # -a : archivační režim ( ekvivalent -rlptgoD ). # -z : komprese dat během přenosu.
# -e : pro zadání použití ssh # -- stats podává informace o přenosu (počet souborů...). # --delete-after : maže soubory, které již ve zdroji po přenosu do cílové složky neexistují. status=$? echo "" >> $log/sauvegarde_$jour.log #kód chyby rsync case $status in 0) echo Success >> $log/save_$day.log;; 1) echo Syntax or usage error >> $log/save_$day.log;; 2) echo Protocol incompatibility >> $log/save_$day.log;; 3) echo Chyby při výběru souborů a vstupních/výstupních adresářů >> $log/sauvegarde_$jour.log;; 4) echo Akce není podporována: pokus o manipulaci s 64bitovými soubory na platformě, která je nepodporuje ; nebo volba, kterou klient podporuje, ale server ne. >> 5) echo Error starting client-server protocol >> $log/sauvegarde_$jour.log;; 6) echo daemon unable to write to log file >> $log/sauvegarde_$jour.log;; 10) echo I/O socket error >> $log/sauvegarde_$jour.log; 11) echo I/O file error >> $log/sauvegarde_$jour.log; 12) echo Chyba v datovém toku protokolu rsync >> $log/save_$day.log; 13) echo Chyba s diagnostikou programu >> $log/save_$day.log;; 14) echo Chyba v kódu IPC >> $log/save_$day.log;; 20) echo SIGUSR1 nebo SIGINT received >> $log/save_$day.log;; 21) echo "An error returned by waitpid()" >> $log/save_$day.log;; 22) echo Chyba při alokaci vyrovnávací paměti hlavní paměti >> $log/sauvegarde_$jour.log;; 23) echo Částečný přenos z důvodu chyby >> $log/sauvegarde_$jour.log;; 24) echo Částečný přenos z důvodu zmizení zdrojového souboru >> $log/sauvegarde_$jour.log;; 25) echo Bylo dosaženo limitu --max-delete >> $log/sauvegarde_$jour.log;; 30) echo Překročena maximální doba čekání při odesílání/příjmu dat >> $log/sauvegarde_$jour.log;; 35) echo Překročena doba čekání při čekání na spojení >> $log/sauvegarde_$jour.log;; 255) echo Nevysvětlená chyba >> $log/sauvegarde_$jour.log;; esac echo "-------------------------------------------------------------". >> $log/backup_$day.log # čas ukončení v protokolu echo "Backup end time: $(date +%H:%M:%S)" >> $log/backup_$day.log echo "-------------------------------------------------------------" >> $log/backup_$day.log exit
  • IP_Server: musí být nahrazen ip vašeho online zálohovacího vzorce
  • User: musí být nahrazeno uživatelským jménem, které bylo spravováno pro prostor online zálohování.

Jak mohu zálohovací skript automatizovat?

Zálohování můžete automatizovat nastavením úlohy cron. Při nastavování této úlohy je třeba uvést umístění souboru"backup.sh".

Závěr

Nyní můžete nastavit automatické zálohování serveru ISPConfig do online zálohovacího prostoru pomocí LWS. Můžete definovat, které soubory mají být do online zálohy zahrnuty nebo vyloučeny.

Neváhejte se podělit o své připomínky a dotazy!

Ohodnotit tento článek :

Tento článek byl pro vás užitečný ?

Article utileAno

Article non utileNe

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Podobné články

2mn čtení

Jak přidám klíč RSA do služby jednotky Rsync SCP?

1mn čtení

Jak vytvořím skript vzdáleného zálohování pomocí Rsync?

0mn čtení

Jak mohu zálohovat své stránky pomocí LWS Drive?

4mn čtení

Nástroj pro obnovení backup2l


Položte týmu LWS a jeho komunitě otázku