rsync is a cross-platform tool that copies only what changed, which makes it practical to run often. A plain copy is not enough on its own, because files can be corrupted, overwritten or encrypted by ransomware, so what you want is several time-rotated copies, ideally offsite. I wrote a small tool, rsync-backup-rotator, to handle that rotation.