Wat is rsync?
Rsync is een command-line tool die speciaal is ontworpen om bestanden en mappen te synchroniseren tussen twee locaties, of dat nu binnen hetzelfde systeem is of over een netwerk. Het maakt gebruik van een delta-algoritme, wat betekent dat alleen de verschillen tussen de bron- en doellocatie worden gekopieerd, in plaats van het volledige bestand opnieuw te verzenden. Dit bespaart bandbreedte en tijd, vooral bij grote bestanden.
Rsync kan worden gebruikt voor lokale back-ups, het kopiëren van bestanden naar een externe server, of voor het synchroniseren van mappen tussen verschillende systemen.
Hoe werkt rsync?
Rsync werkt door bestanden en mappen te vergelijken tussen de bronlocatie (de plaats waar de bestanden zich bevinden) en de doellocatie (de plaats waar je de bestanden naartoe wilt kopiëren). Wanneer rsync wordt uitgevoerd, kopieert het alleen de bestanden die zijn gewijzigd of nieuw zijn, wat de snelheid aanzienlijk verhoogt in vergelijking met traditionele kopieermethoden.
Basisfunctionaliteit van rsync:
- Bestanden synchroniseren: Rsync vergelijkt de bron- en doellocatie en kopieert alleen de gewijzigde bestanden of delen van bestanden.
- Delta-overdracht: In plaats van hele bestanden opnieuw te kopiëren, verstuurt rsync alleen de delen die zijn gewijzigd, wat de hoeveelheid gegevensoverdracht aanzienlijk vermindert.
- Compressie: Rsync kan bestanden tijdens het overzetten comprimeren, waardoor de snelheid toeneemt en de benodigde bandbreedte afneemt.
- Verwijderen van bestanden: Rsync kan bestanden op de doellocatie verwijderen die niet langer op de bronlocatie aanwezig zijn, waardoor de doellocatie exact overeenkomt met de bronlocatie.
Basisgebruik van rsync
Hier zijn enkele van de meest voorkomende rsync-commando’s en opties die je kunt gebruiken:
Rsync met de -a-optie
De -a (archive) optie is een van de meest gebruikte opties bij rsync. Deze optie zorgt ervoor dat rsync recursief door de mappen gaat, de bestandspermissies, eigenaars en tijdstempels behoudt, en symbolische links kopieert.
Een veelvoorkomend gebruik van rsync met de -a-optie is om een volledige mapstructuur te kopiëren terwijl alle kenmerken van de bestanden behouden blijven.
Rsync met de -avz-optie
De -avz-optie is een uitgebreide versie van het basiscommando. Hier betekent:
Deze optie wordt vaak gebruikt wanneer bestanden van een lokale map naar een externe server worden gekopieerd. Het commando is ook handig om de voortgang te volgen en de bestanden te comprimeren tijdens het overzetten.
Rsync met verwijderoptie
Met de –delete-optie kun je ervoor zorgen dat rsync bestanden verwijdert op de doellocatie die niet langer op de bronlocatie aanwezig zijn. Dit is handig om de bron- en doellocatie volledig gesynchroniseerd te houden.
Deze optie is nuttig wanneer je een exacte kopie van de bronmap wilt hebben op de doellocatie, inclusief het verwijderen van bestanden die niet langer nodig zijn.
Waarom kiezen voor rsync?
Rsync is een populaire keuze voor systeembeheerders en ontwikkelaars vanwege de efficiëntie, betrouwbaarheid en flexibiliteit die het biedt bij het kopiëren en synchroniseren van bestanden. Hieronder staan enkele voordelen van rsync:
Voordelen van rsync:
Wanneer gebruik je rsync?
Rsync is vooral nuttig voor situaties waarin je regelmatig grote hoeveelheden gegevens moet kopiëren, of wanneer je back-ups wilt maken of bestanden wilt synchroniseren tussen servers of systemen. Hier zijn enkele scenario’s waarin rsync bijzonder geschikt is:
Use-cases voor rsync:
- Back-ups maken: Rsync is ideaal voor het maken van incrementele back-ups, omdat het alleen nieuwe of gewijzigde bestanden kopieert. Dit vermindert de benodigde tijd en opslagruimte voor back-ups.
- Bestanden synchroniseren tussen servers: Rsync wordt vaak gebruikt om bestanden tussen verschillende servers te synchroniseren, bijvoorbeeld om ervoor te zorgen dat webservers up-to-date blijven of dat gegevensreplicatie plaatsvindt.
- Overzetten van grote bestanden over het netwerk: Door de compressie- en delta-overdrachtstechnieken van rsync kun je efficiënt grote bestanden over netwerken overbrengen zonder onnodige vertraging.
- Bestandssynchronisatie tussen apparaten: Rsync kan ook worden gebruikt voor het synchroniseren van mappen op verschillende apparaten, zoals tussen een laptop en een desktop, of tussen een lokale computer en een externe server.
Conclusie
Rsync is een veelzijdige en krachtige tool voor het synchroniseren en overbrengen van bestanden, zowel lokaal als over netwerken. Het biedt een efficiënte manier om gegevens te kopiëren door alleen de gewijzigde delen van bestanden te verzenden, wat het ideaal maakt voor back-ups, bestandssynchronisatie en het repliceren van gegevens tussen servers. Met zijn uitgebreide functionaliteiten en eenvoudige integratie met SSH voor beveiligde overdracht, is rsync een essentiële tool voor systeembeheerders en ontwikkelaars die werken met grote hoeveelheden data. Wil je meer weten over het gebruik van rsync en hoe je het kunt inzetten voor jouw projecten? Bezoek onze kennisbank voor verdere tips en advies.