====== cp of rsync?======
[[linux:linux|{{ :linux:linux_tux.png?120|}}]]
===== context=====
dit document verklaart wanneer je best cp of rsync gebruikt.
===== cp =====
* voert file copy uit en kopieert bestand integraal
* gaat heel snel
* nuttige opties:-R: recursief, mappen en alles wat eronder ligt
-v: verbose, alle nuttige output, dus
-p: preserve permissions/timestamp, behoudt van timestamp is heel belangrijk als je later rsync gebruikt.
verschillende wijzigingstijd zal immers het bestand opnieuw kopiƫren, zelfs als het even groot is.
* voorbeeld: cp -Rvp /mnt/backup/backup_nas/logs /volume1/backup_nas
===== rsync =====
* kopieert enkel de gewijzigde stukken uit een bestand(sreeks)
* voert checksum uit
* weegt zwaarder op de CPU dan cp
* nuttige opties:-r: recursief, mappen en alles wat eronder ligt
-v: verbose, alle nuttige output, dus
-a: archive, behoudt van permissies/owner, recursief
-z: comprimeert bestanden tijdens overdracht.
-n: dry-run, toont wat er __zou__ uitgevoerd worden
-P: toont vooruitgang van overdracht
--size-only: houdt geen rekening met wijzigingsdatum. Bestanden van gelijke grootte, worden niet opnieuw gekopieerd.
Heel nuttig als je **cp** uitvoerde zonder behoudt van timestamp (-p)
* voorbeeld: rsync -Pavz /mnt/backup/backup_nas/logs /volume1/backup_nas/logs
===== nut =====
* CP gebruik je voor een eenmalige copy, voorbeeld: [[qnap:1disk_2bay_nas_uitbreiden|volledige backup schijf naar nieuwe backup schijf kopiƫren]].
* RSYNC gebruik je voor regelmatige update van bestaande bestanden, voorbeeld: twee bestandsstructuren gelijk zetten
* RSYNC kan je ook gebruiken om een vastgelopen cp commando aan te vullen met de bestanden die nog niet werden gekopieerd.
* Als je een paar TB data eenmalig kopieert naar een nieuwe locatie, zal rsync daar veeeeeeeel langer over doen dan CP, gezien het die extra controles uitvoert.
===== grote bestandskopie =====
- start de bestandsoverdracht: cp -Rvp /mnt/backup/backup_nas/fotos/ /volume1/backup_nas/
- controleer of bron en doel even groot zijn: du -sh /mnt/backup/backup_nas/fotos/ /volume1/backup_nas/fotos/
9.0G /mnt/backup/backup_nas/fotos/
1.9G /volume1/backup_nas/fotos/
- controleer wat er nog dient gesynct te worden: rsync -Pavz -n /mnt/backup/backup_nas/fotos/ /volume1/backup_nas/fotos/
- kopieer bestanden die niet (correct) werden gekopieerd: rsync -Pavz --progress /mnt/backup/backup_nas/fotos/ /volume1/backup_nas/fotos/
Als je aan commando **cp** optie ''-p'' niet hebt meegegeven, moet je aan rsync telkens ''--size-only'' toevoegen, zodat de timestamp wordt overgeslagen en bestandsgrootte het enige criterium is.
===== meer info =====
{{tag>Linux}}