Hoppa till huvudinnehåll

VPS: Säkerhetskopiera Linux-servrar med Rsync

Denna guide skapades med följande produkter:

(Detaljer kan variera med produkter från olika leverantörer men huvudkoncepten förblir desamma)

Rsync:

Säkerhetskopior kan göras med verktyget Rsync.
De kan kopieras på det lokala systemet till en annan mapp/enhet eller till ett fjärrsystem.

Kopiera data till en annan lokal mapp eller enhet:

info

Obs: Första körningen kan ta betydligt längre tid än följande körningar, beroende på mängden data. Detta beror på att Rsync första gången synkroniserar all data, medan från andra gången synkroniseras bara ändrad data.

Så skapas en inkrementell säkerhetskopia.

Steg 1

Rsync kan installeras med följande kommando:

apt install rsync

När det är installerat kan det användas direkt.

Steg 2

I det här exemplet ska mappen Client under /home synkroniseras till mappen Backup under /home.

Detta görs med följande kommando:

rsync -arz /home/Client /home/Backup

-a=Arkivering, attributen kopieras


-r=Rekursiv, undermappar synkroniseras också


-z=Komprimering, beroende på datamängd/datastorlek komprimeras datan

Mappen synkroniserades framgångsrikt

Om en fil etc. i client-mappen tas bort nu, kommer den att finnas kvar i backup-mappen.
Men eftersom filerna alltid ska vara 1:1 synkroniserade kan rsync-kommandot enkelt ändras, denna ändring ser till att data som inte längre finns i client-mappen också tas bort från backup-mappen.

Det modifierade kommandot är:

rsync -arz --delete /home/Client /home/Backup

-a=Arkivering, attributen kopieras


-r=Rekursiv, undermappar synkroniseras också


-z=Komprimering, beroende på datamängd/datastorlek komprimeras datan


--delete= Tar bort data som inte längre finns i källan men fortfarande finns i målet

Steg 3

Så att kommandot inte alltid behöver köras manuellt kan det enkelt läggas in i en cronjob.
Till exempel ska en backup skapas dagligen kl 03:00:

Öppna crontab -e:

Med siffran 1 kan "nano" användas som editor.
Med siffran 2 kan "vim" användas som editor.

När filen öppnats med t.ex. Nano kan en crontab skapas och läggas in.
En crontab kan skapas med denna Generator.

Den inskrivna crontaben ser då ut så här:

0 3 * * * rsync --progress -arz --delete -e  "ssh -i /home/sshkey/keybackup" /home/Client/ root@123.123.123.123:/home/Backup/Home-Server1/ >/dev/null 2>&1

Varje dag kl 03:00 körs kommandot och en backup skapas.