Replicatie of synchronisatie is het gelijk houden van data op twee verschillende locaties. In deze artikelserie behandelen we software voor het gelijk houden van bestanden en directory’s onder Linux, MacOs en Windows, zowel lokaal als op afstand.
Vaak werken we met een stel bestanden of volledige directory's op verschillende systemen tegelijk. We willen dat die op alle systemen hetzelfde blijven. Het gelijk houden van een verzameling bestanden of volledige directorybomen heet synchronisatie of bestandenreplicatie. In het Engels gebruiken ze de termen 'synchronization' en 'replication' vaak naast 'mirroring' (spiegelen). In Linux en andere Unix-achtigen zit standaard een zeer krachtig synchronisatiegereedschap genaamd rsync. Rsync werkt als client en als server en met lokale volumes of met volumes op afstand. Daarbij is het absoluut veilig tunnelen van de synchronisatie over ssh mogelijk met of zonder bijkomende compressie om bandbreedte te besparen. Qua functionaliteit kan geen van de in deze serie besproken software zelfs maar aan rsync tippen. Helaas heeft Microsoft in Windows standaard niets voorzien voor synchronisatie. Er is wel een back-upprogramma, maar dat is niet hetzelfde.
Definitie
Replicatie of synchronisatie is het vergelijken van een bron en een bestemming met het doel ze gelijk te maken. Daartoe kopiëren we eerst bestanden van de bron naar de bestemming als die nieuwer zijn of nog niet bestonden. Als we hier stoppen, maken we in feite een back-up. Voor synchronisatie gaan we nog een stap verder. We kopiëren alle bestanden van de bestemming naar de bron als hun tijdstempel recenter is dan van het bronbestand. Ten slotte wissen we bestanden die op de bestemming bestaan, maar niet op de bron. Dat heet ook een bronsynchronisatie. Als je de bestanden die wel op de bestemming maar niet op de bron staan naar de bron toe kopieert, heet dat een doelsynchronisatie. In de overgrote meerderheid van de gevallen willen we een bronsynchronisatie of bronreplicatie uitvoeren.
Commerciële back-upsoftware
Heb je al een commercieel back-upsoftwarepakket in gebruik? Dan is het best mogelijk dat dit al bestandenreplicatie kan doen. Zowat alle recente commerciële back-uppakketten kunnen dit. Dan hoef je niets extra te kopen of te installeren. Windows back-upsoftware kan vaak wel UNC's en URL's aan om bron- en doelvolumes mee aan te wijzen, maar de replicatie over een beveiligde tunnel zoals ssh of ssl sturen zit er niet in. Deze functionaliteit treffen we vooralsnog uitsluitend bij Linux en Unix aan.
Functionaliteit
Goede synchronisatie- of replicatiesoftware stelt ons in staat nauwkeurig bron en bestemming te kiezen, met inbegrip van bestanden of directory's die van de synchronisatie uitgesloten moeten worden. Meestal kunnen we kiezen wat er moet gebeuren als er bestanden ontbreken op de bron of op de bestemming: bijkopiëren of het bestaande bestand wissen. Het komt erop neer of je wil uitsluiten dat jouw bron ooit gewijzigd wordt. Indien ja, dan kopieer je enkel naar de bestemming toe. De bestemming pas je dus aan zodat die een spiegel is van jouw bron. Dat is in feite een back-up. Sta je wel toe dat ook bestanden op de bron gewist of aangemaakt mogen worden, dan praten we over een echte tweewegsynchronisatie. Die bronwijziging treedt uiteraard alleen op, als er bestanden op de bestemming staan die niet op de bron aanwezig zijn. Je kunt dan twee mogelijke acties ondernemen:
1. de extra bestanden op de bestemming wissen;
2. de extra bestanden op de bestemming naar de bron toe kopiëren.
Een andere mogelijkheid treedt op, als er bestanden op de bron staan die niet op de bestemming aanwezig zijn. Ook dan kun je twee dingen doen:
1. de extra bestanden op de bron wissen;
2. de extra bestanden op de bron naar de bestemming toe kopiëren.
Bij veel synchronsatiesoftware kun je een optie 'NoDelete' (niet wissen) opgeven om te voorkomen dat bestanden op de bron gewist raken als ze niet aanwezig blijken op de bestemming. Bestanden op de bron wissen overweeg je natuurlijk alleen als je zeker weet dat die bestanden inderdaad niet langer nodig zijn.
Geteste producten
We hebben rsync getest onder Linux en, herverpakt als DeltaCopy, ook onder Windows. Verder hebben we het openbronprogramma Synkron getest, dat werkt onder Linux, MacOS en Windows. Voor het Windows-platform hebben we ook nog de commerciële programma's SyncBack Pro en GoodSync Pro getest. In de volgende twee delen van deze driedelige serie vind je de gedetailleerde testverslagen.
Conclusie
Bij de betalende Windows-software zijn we het meest onder de indruk van GoodSync en vinden we SyncBack in vergelijking daarmee trager en minder functionaliteit bieden. Gratis kan het echter ook: Synkron is buitengewoon indrukwekkend, maar als je niet bang bent voor de opdrachtregel is rsync nog altijd niet te verslaan.
De kern
* Replicatie of synchronisatie is het gelijk houden van data op twee verschillende locaties.
* Gratis synchronisatietools zoals rsync en Synkron verslaan de commerciële alternatieven met gemak.
Goed artikel. Zelf heb ik recentelijk ook wat tests moeten uitvoeren en hierbij kwam Peer Software http://www.peersoftware.com erg goed uit de bus. Het meest verbaasde me overigens de benadering van FolderMaestro, die toch wel erg voor loopt op het gebied van data ynchronisatie en collaboratie. Data synchroniseren is namelijk 1 ding, maar versieconflicten voorkomen is dan vaak de vervolgvraag.
Gerard, bedankt voor de tip in verband met FolderMaestro. Iets om een volgende keer rekening mee te houden. En inderdaad, betrouwbaar versiebeheer kan bij sommige toepassingen van belang zijn.
Quote:”Helaas heeft Microsoft in Windows standaard niets voorzien voor synchronisatie.”
Niet als je alleen rondklikt 😉
Read more:
– robocopy /mir /mot : voor de mirror optie (alle windows versies) [http://technet.microsoft.com/en-us/library/cc733145(WS.10).aspx]
– DFS/FRS : voor servers [http://technet.microsoft.com/en-us/library/cc787066(WS.10).aspx]
Synkron kende ik nog niet. Ziet er mooi uit, en ga ik zeker een keer proberen.
Microsoft heeft inderdaad, behalve Synctoy wat handig is voor eindgebruikers, ook goede sync software in Server 2008 R2.
Unison mag eigenlijk niet ontbreken! Dit is namelijk een zeer volwassen, multiplatform programma voor zowel CLI als GUI gebruik. Het mooie van Unison is dat het hashes van bestanden maakt, zodat het ook verplaatsingen (renames, moves) doorheeft en dus het netwerk niet nodeloos belast. Ook gaat de nieuwste beta gewoon door met syncen na een crash. Unison is mijn primaire programma voor grote synchronisaties.
Unison zat er de vorige keer in, maar heb ik deze keer weggelaten omdat het niet verder ontwikkeld wordt. De functionaliteit wordt eigenlijk ook opgevuld door rsync en svn.
ARCserve High Availability & ARCserve r15 Replication zijn ook hele mooie oplossingen. Zeker de HA oplossing van CA, waarbij gebruikers automatisch naar de uitwijkserver worden verplaatst zonder dat ze daar vrijwel iets van merken is een prachtige oplossing.
De belangrijkste kenmerken van CA ARCserve High Availability zijn:
– Failover voor het hele systeem. (Hard- & software aware.)
– Ondersteuning voor Windows, Linux en UNIX op fysieke en virtuele servers.
– CA ARCserve Assured Recovery voor geautomatiseerde recoverytests.
– Failover voor afzonderlijke groepsservers.
– Data Rewind.
– Continue en periodieke replicatie.
– Offlinesynchronisatie voor grote op Windows gebaseerde gegevenssets en databases om de time-to-protection te beperken.
– Gestandaardiseerde, webgebaseerde beheerconsole met ingebouwde functionaliteit voor redundancy en failover voor high availability.
– Replicatie van vele applicaties. (Exchange, SQL, Sharepoint, e.v.a.)