Dê uma olhada no rsync e no rsnapshot. O Rsync tem muitas opções e você pode facilmente integrá-lo em um script ou adicioná-lo ao seu crontab (isso é um pouco de DIY).
Para suas necessidades, no entanto, eu usaria o rnsapshot (ele usa o rsync), ele normalmente pode fazer tudo o que você quer.
rsnapshot é um utilitário de captura instantânea do sistema de arquivos baseado em rsync. Pode fazer backups incrementais de sistemas de arquivos locais e remotos para qualquer número de máquinas. O rsnapshot faz uso extensivo de hard links, então o espaço em disco só é usado quando absolutamente necessário.
Usando links físicos, o rsnapshot cria a ilusão de vários backups completos, enquanto ocupa apenas o espaço de um backup completo mais as diferenças. Quando acoplado ao ssh, também é possível obter instantâneos de sistemas de arquivos remotos.
Consequentemente, o rsnapshot economiza muito mais espaço em disco. A quantidade de espaço necessária é aproximadamente o tamanho de um backup completo, além de uma cópia de cada arquivo adicional que é alterado.