Winkelwagen

/ .nl-domeinnaam

Jouw .nl voor slechts € 0,49.

Domeinnaam checken
E-mail

/ Hostingpakket keuzehulp

Weet je niet zeker welk hostingpakket de beste
keus is voor jouw website? Met onze keuzehulp
kom je er wel uit.

Direct naar de keuzehulp

/ OpenStack

/ Probeer Public Cloud uit

Gratis 1 maand aan de slag met Public Cloud?

Vraag proefperiode aan

/ TransIP Blog

Woocommerce vs Shopify - Kies jouw ideale platform

Lees de blogpost
Hulp nodig?

    Sorry, we konden geen resultaten vinden voor jouw zoekopdracht.

    Rsync gebruiken in Linux

    Met Rsync verplaats je snel en veilig data tussen twee Linux-servers, of mappen binnen enkele Linux-server, met behoud van rechten, timestamps en (optioneel) ACL’s en extended attributes. In deze handleiding laten we zien hoe je Rsync gebruikt om data over te zetten van server A naar server B. De stappen zijn geschikt voor Ubuntu, Debian, AlmaLinux, Rocky Linuxen CentOS Stream. We gaan uit van twee servers met SSH-toegang.


    :contentReference[oaicite:0]{index=0} :contentReference[oaicite:1]{index=1} :contentReference[oaicite:2]{index=2}

    • Gebruik eerst een proefrun met --dry-run om te voorkomen dat je per ongeluk data overschrijft of verwijdert.
    • Let op het schuine streepje: /bron/ kopieert de inhoud van de map, /bron kopieert de map zelf.
    • --delete verwijdert bestanden aan de doelzijde die niet (meer) aan de bron bestaan. Combineer het eerst met --dry-run.
    • Controleer schijfruimte aan de doelzijde en zorg dat SSH-poort en firewallregels kloppen.
    • Maak vóór migraties een back-up (bijv. via Weekly Backups).
     

     

    Voorbereiding

     

    Noteer de IP-adressen of hostnames van beide servers en bepaal of je ‘push’ (vanaf bron naar doel) of ‘pull’ (vanaf doel de bron ophalen) gebruikt. Voor langdurige transfers is het handig om screen of tmux te gebruiken, zodat de sessie doorloopt bij een verbroken SSH-verbinding.


     

    Rsync installeren

     

    In principe is Rsync aanwezig in alle moderne besturingssystemen. Mocht Rsync toch Rsync niet op je server staan, bijvoorbeeld omdat je het verwijdert hebt, installeer dan eerst Rsync als volgt:

     

    Stap 1

    Verbind met je Linux-server via SSH, de VPS-console (VPS) of de OpenStack-console (OpenStack-instance).


     

    Stap 2 

    Installeer Rsync als volgt:

    Ubuntu / Debian

    Update eerst je server en installeer vervolgens Rsync:

    sudo apt -y update && sudo apt -y update
    sudo apt -y install Rsync
     
     

    AlmaLinux 10 / Rocky Linux 10 / CentOS Stream 10

    Update eerst je server en installeer vervolgens Rsync:

    sudo dnf -y update
    sudo dnf -y install Rsync
     
     

     

    Rsync gebruiken

     

    In een Rsync-commando gebruik je de syntax Rsync, arguments, bron (lokale map of map op een remote server/computer) en het doel. Ook het doel mag een lokale map zijn, of een remote server/computer: Rsync kan namelijk ook prima gebruikt worden om bestanden binnen een server of computer te kopiëren.

     

    Rsync testen

     

    Verbind met de bronserver en voer een test uit om de werking van Rsync te testen. Vervang hierbij:

    • /directory/ : De directory op de server waar je nu mee verbonden bent.
    • user : Een gebruikersnaam die rechten heeft om met de remote server te verbinden en de directory kan bewerken waar je data in plaatst.
    • @doelserver : De hostname of het IP-adres van de server waar je de data naartoe verplaatst. 
    • /targetdir/ : De directory op de remote server waar je de data naartoe wil verplaatsen.
    Rsync -avhn /directory/ user@doelserver:/targetdir/

    Met het argument -avhn voeg je de volgende optionele opties toe:

    • a : archiefmodus: recursief, behoud rechten/owners/timestamps
    • v : verbose
    • h : human readable
    • n : dry-run

    Het handige van Rsync is dat je het ook kunt omdraaien: je kunt ook met de doelserver verbinden (waar de bestanden naartoe moeten worden gestuurd) en dan simpelweg verbindt met de bronserver in plaats van de doelserver, oftewel:

    Rsync -avhn user@bronserver:/directory/ /targetdir/

     

    Data kopiëren met Rsync

     

    Voer na een dry-run test de daadwerkelijke kopie uit (een ‘push’: vanaf bron naar doel):

    Rsync -avHhz --progress --delete /directory/ user@doelserver:/targetdir/

    Of draai ook hier het proces om en haal data op vanaf de doelserver (een ‘pull’: vanaf de doelserver trek je de data van de bronserver af):

    Rsync -avHhz --progress --delete user@bronserver:/directory/ /targetdir/

    De meeste argument opties hebben we bij het testen besproken. Hier voegen we nog de volgende opties (optioneel) toe: 

    • H : Behoud hardlinks)
    • z : Compressie tijdens transport
    • --progress : Voortgang van de bestandssynchronisatie 
    • --delete : Verwijder extra bestanden aan doelzijde. Gebruik --delete alleen als de doelstructuur exact gelijk moet zijn aan de bron.

     

    Een aangepaste SSH-poort en/of SSH-key gebruiken

     

    Rsync -aHvz -e "ssh -p 2222 -i ~/.ssh/id_ed25519" /data/ user@doelserver:/data/

    Vervang hier 2222 door het gewenste SSH-poortnummer en/of ~/.ssh/id_ed25519 door de directory en bestandsnaam van je SSH-sleutel. 


     

    Optionele Rsync arguments

     

    Rsync kent nog meer arguments dan de reeds benoemde. Hieronder vind je nog enkele handige opties:

    • --partial : Herstelt grote bestanden bij onderbreking.
    • --inplace : Schrijft direct naar doelbestand; handig voor grote delta’s.
    • --bwlimit=50M : Beperk bandbreedte van de verbinding. 
    • --timeout=60 : Time-out in seconden.
    • --include='subdirectoryA/' --include='subdirectoryB/' --exclude='*' : Synchroniseer alleen subdirectoryA en subdirectoryB in de bron directory en sla alle andere mappen over, bijvoorbeeld:
      rsync -aHvz --include='projectA/' --include='projectB/' --exclude='*' /data/ user@doelserver:/data
    • --exclude='*.tmp' --exclude='.cache/' : Sluit respectievelijk bestanden en submappen uit, in dit geval bestanden met de extensie .tmp en de subdirectory .cache/ (en sub-subdirectories daarvan).

     

     

    Veel voorkomende issues:

     

    • Verkeerd pad door ontbreken van ‘/’: Gebruik bijvoorbeeld /data/ om alleen de inhoud te kopiëren; gebruik /data om de map zelf te kopiëren.
    • ‘Permission denied’ op systeembestanden: Voer Rsync met sudo uit en gebruik -A -X als je ACL’s/xattrs gebruikt.
    • Trage verbinding: voeg -z toe (compressie) of beperk bandbreedte met --bwlimit zodat andere diensten bereikbaar blijven.
    • Herstart nodig na onderbreking: gebruik --partial of draai het commando opnieuw; Rsync stuurt enkel de verschillen.

     

    Hiermee zijn we aan het eind gekomen van onze Rsync-handleiding. Met Rsync migreer je data snel en betrouwbaar tussen Linux-servers, of binnen een enkele Linux-server. Begin met een dry-run, let op het pad (met of zonder slash), en gebruik de juiste opties voor jouw situatie (rechten, excludes, bandbreedte, automatisering). Na controle kun je met --delete doel en bron exact gelijk trekken.

    Kom je er niet uit?

    Ontvang persoonlijke hulp van onze supporters

    Neem contact op