I Cron-inlägget schemalade vi ett script som hette backup.sh utan att gå in på vad det faktiskt gjorde. Nu fyller vi den luckan med rsync — verktyget de flesta riktiga backup-lösningar på Linux bygger vidare på.
"Jag har ju RAID" är inte samma sak som backup — RAID skyddar mot att en disk dör, inte mot att du råkar radera fel mapp, att ransomware krypterar allt, eller att hela servern går upp i rök. En riktig backup är en separat kopia, helst på en annan plats, som existerar helt oberoende av originalet.
dokument/) betyder "kopiera innehållet i mappen". Utan det snedstrecket kopieras hela mappen som en undermapp på destinationen — ett av de vanligaste rsync-misstagen.Till skillnad från cp kopierar rsync bara det som faktiskt ändrats sedan förra körningen, genom att jämföra filstorlek och tidsstämpel. Kör du samma backup varje natt tar körning nummer två sekunder istället för minuter, eftersom 99 % av filerna redan finns på plats.
Här knyter det ihop med SSH-nycklarna från tidigare i serien — samma nyckel funkar direkt:
Som standard lämnar rsync kvar gamla filer på destinationen även om de raderats i källan. Vill du att backupen ska spegla källan exakt:
--dry-run första gången du testar en kommando med --delete: rsync -avh --delete --dry-run /data/ /mnt/backup/ visar exakt vad som skulle hända, utan att röra en enda fil.Vill du kunna gå tillbaka till hur en fil såg ut för en vecka sedan, inte bara den senaste kopian? --link-dest skapar hårda länkar till oförändrade filer istället för att kopiera dem igen — du får flera fullständiga "snapshots", men bara de faktiska ändringarna tar ny diskplats:
Precis som i förra inlägget — en rad i crontab, och det sköter sig självt varje natt:
En backup du aldrig testat återställa är i praktiken ingen backup — bara en förhoppning. Öva på att kopiera tillbaka en fil från backupen med jämna mellanrum, inte bara att kopiera dit den.
3 kopior av din data (originalet plus två backuper), på 2 olika typer av lagring (till exempel lokal disk och molnlagring eller en annan fysisk plats), varav 1 kopia förvaras på en annan fysisk plats. Rsync löser den tekniska kopieringen — men principen om var kopiorna faktiskt ligger är minst lika viktig som verktyget.
// Sammanfattning — Backup med rsync
- RAID skyddar mot diskfel, inte mot raderade filer, ransomware eller en förlorad server — det krävs en riktig backup
- rsync kopierar bara det som faktiskt ändrats, vilket gör återkommande backuper snabba
- Samma SSH-nyckel du redan satt upp funkar direkt för att ta backup till en annan server
--deletespeglar källan exakt — kör alltid--dry-runförsta gången--link-destger dig flera daterade snapshots utan att slösa diskplats på oförändrade filer- En backup som aldrig testats återställas är i praktiken ingen backup
Backup är sällan det roligaste att sätta upp — det känns som jobb utan belöning, ända fram till dagen det faktiskt räddar dig. Med rsync och cron ihop har du nu en tyst, automatisk säkerhetsnätet som körs varje natt utan att du behöver tänka på det.